39class SolutionField :
public dealii::Subscriptor
42 using VectorType = dealii::LinearAlgebra::distributed::Vector<Number>;
45 : initialize_vector([](VectorType &) {}),
46 recompute_solution_field([](VectorType &, VectorType
const &) {}),
47 type(SolutionFieldType::scalar),
61 initialize_vector(solution_vector);
78 recompute_solution_field(solution_vector, src);
86 AssertThrow(is_available,
87 dealii::ExcMessage(
"You are trying to access a Vector that is invalid."));
89 return solution_vector;
93 evaluate_get(VectorType
const & src)
106 dealii::DoFHandler<dim>
const &
107 get_dof_handler()
const
119 std::function<void(VectorType &)> initialize_vector;
121 std::function<void(VectorType &, VectorType
const &)> recompute_solution_field;
123 SolutionFieldType type;
127 dealii::DoFHandler<dim>
const * dof_handler;
131 VectorType solution_vector;