39class TimeIntInterpolateAnalyticalSolution :
public TimeIntBDF<dim, Number>
41 using Base = TimeIntBDF<dim, Number>;
42 using VectorType =
typename Base::VectorType;
46 TimeIntInterpolateAnalyticalSolution(
47 std::shared_ptr<Operator> operator_in,
51 MPI_Comm
const & mpi_comm_in,
52 bool const is_test_in)
53 : Base(operator_in, helpers_ale_in, postprocessor_in, param_in, mpi_comm_in, is_test_in),
54 velocity(this->order),
60 print_iterations()
const final
62 std::vector<std::string> names = {
"Interpolation analytical solution"};
63 std::vector<double> iterations_avg{0.0};
64 print_list_of_iterations(this->pcout, names, iterations_avg);
68 get_velocity()
const final
75 get_pressure()
const final
81 get_velocity_np()
const final
86 get_pressure_np()
const final
93 get_velocity(
unsigned int i )
const final
100 get_pressure(
unsigned int i )
const final
106 allocate_vectors()
final
108 Base::allocate_vectors();
111 for(
unsigned int i = 0; i < velocity.size(); ++i)
112 this->operator_base->initialize_vector_velocity(velocity[i]);
113 this->operator_base->initialize_vector_velocity(velocity_np);
116 for(
unsigned int i = 0; i < pressure.size(); ++i)
117 this->operator_base->initialize_vector_pressure(pressure[i]);
118 this->operator_base->initialize_vector_pressure(pressure_np);
126 do_timestep_solve()
final
128 this->operator_base->interpolate_analytical_solution(velocity_np,
130 this->get_next_time());
134 prepare_vectors_for_next_timestep()
final
136 Base::prepare_vectors_for_next_timestep();
139 velocity[0].swap(velocity_np);
142 pressure[0].swap(pressure_np);
146 solve_steady_problem()
final
148 AssertThrow(
false, dealii::ExcMessage(
"TimeIntAnalytic not implemented for steady problem."));
153 initialize_current_solution()
final
155 if(this->param.ale_formulation)
156 this->helpers_ale->move_grid(this->get_time());
158 this->operator_base->interpolate_analytical_solution(velocity[0],
164 initialize_former_multistep_dof_vectors()
final
167 for(
unsigned int i = 1; i < velocity.size(); ++i)
169 if(this->param.ale_formulation)
170 this->helpers_ale->move_grid(this->get_previous_time(i));
172 this->operator_base->interpolate_analytical_solution(velocity[i],
174 this->get_previous_time(i));
179 set_velocity(VectorType
const & velocity_in,
unsigned int const i )
final
181 velocity[i] = velocity_in;
185 set_pressure(VectorType
const & pressure_in,
unsigned int const i )
final
187 pressure[i] = pressure_in;
190 std::vector<VectorType> velocity;
191 std::vector<VectorType> pressure;
192 VectorType velocity_np;
193 VectorType pressure_np;
Definition postprocessor_interface.h:37