49 using VectorType = dealii::LinearAlgebra::distributed::Vector<Number>;
50 using BlockVectorType = dealii::LinearAlgebra::distributed::BlockVector<Number>;
56 MPI_Comm
const & mpi_comm_in,
57 bool const is_test_in);
63 virtual VectorType
const &
64 get_velocity()
const = 0;
66 virtual VectorType
const &
67 get_velocity_np()
const = 0;
69 virtual VectorType
const &
70 get_pressure()
const = 0;
72 virtual VectorType
const &
73 get_pressure_np()
const = 0;
76 get_velocities_and_times(std::vector<VectorType const *> & velocities,
77 std::vector<double> & times)
const;
80 get_velocities_and_times_np(std::vector<VectorType const *> & velocities,
81 std::vector<double> & times)
const;
84 get_pressures_and_times(std::vector<VectorType const *> & pressures,
85 std::vector<double> & times)
const;
88 get_pressures_and_times_np(std::vector<VectorType const *> & pressures,
89 std::vector<double> & times)
const;
95 advance_one_timestep_partitioned_solve(
bool const use_extrapolation);
98 print_iterations()
const = 0;
101 print_solver_info()
const final;
105 allocate_vectors()
override;
108 setup_derived()
override;
111 read_restart_vectors(boost::archive::binary_iarchive & ia)
override;
114 write_restart_vectors(boost::archive::binary_oarchive & oa)
const override;
117 prepare_vectors_for_next_timestep()
override;
123 unsigned int const refine_steps_time;
129 std::shared_ptr<SpatialOperatorBase<dim, Number>> operator_base;
132 std::vector<VectorType> vec_convective_term;
133 VectorType convective_term_np;
136 bool use_extrapolation;
140 std::shared_ptr<HelpersALE<dim, Number>
const> helpers_ale;
144 get_quantities_and_times(
145 std::vector<VectorType const *> & quantities,
146 std::vector<double> & times,
147 std::function<VectorType
const *(
unsigned int const)>
const & get_quantity)
const;
150 get_quantities_and_times_np(
151 std::vector<VectorType const *> & quantities,
152 std::vector<double> & times,
153 std::function<VectorType
const *(
unsigned int const)>
const & get_quantity,
154 std::function<VectorType
const *()>
const & get_quantity_np)
const;
157 initialize_vec_convective_term();
160 calculate_time_step_size()
final;
163 recalculate_time_step_size()
const final;
165 virtual VectorType
const &
166 get_velocity(
unsigned int i )
const = 0;
168 virtual VectorType
const &
169 get_pressure(
unsigned int i )
const = 0;
172 set_velocity(VectorType
const & velocity,
unsigned int const i ) = 0;
175 set_pressure(VectorType
const & pressure,
unsigned int const i ) = 0;
178 postprocessing()
const final;
181 std::shared_ptr<PostProcessorInterface<Number>> postprocessor;
184 VectorType grid_velocity;
185 std::vector<VectorType> vec_grid_coordinates;
186 VectorType grid_coordinates_np;
Definition postprocessor_interface.h:34