68 using VectorType = dealii::LinearAlgebra::distributed::Vector<Number>;
70 Driver(MPI_Comm
const & mpi_comm,
73 bool const is_throughput_study);
82 print_performance_results(
double const total_time)
const;
87 std::tuple<unsigned int, dealii::types::global_dof_index, double>
88 apply_operator(OperatorType
const & operator_type,
89 unsigned int const n_repetitions_inner,
90 unsigned int const n_repetitions_outer)
const;
97 mark_cells_coarsening_and_refinement(dealii::Triangulation<dim> & tria,
98 VectorType
const & solution)
const;
101 setup_after_coarsening_and_refinement();
104 do_adaptive_refinement();
107 MPI_Comm
const mpi_comm;
110 dealii::ConditionalOStream pcout;
116 bool const is_throughput_study;
119 std::shared_ptr<ApplicationBase<dim, Number>> application;
122 std::shared_ptr<Grid<dim>> grid;
124 std::shared_ptr<dealii::Mapping<dim>> mapping;
126 std::shared_ptr<MultigridMappings<dim, Number>> multigrid_mappings;
129 std::shared_ptr<DeformedMappingFunction<dim, Number>> ale_mapping;
131 std::shared_ptr<MultigridMappings<dim, Number>> ale_multigrid_mappings;
134 std::shared_ptr<HelpersALE<dim, Number>> helpers_ale;
136 std::shared_ptr<Operator<dim, Number>> pde_operator;
138 std::shared_ptr<PostProcessorBase<dim, Number>> postprocessor;
140 std::shared_ptr<TimeIntBase> time_integrator;
142 std::shared_ptr<DriverSteadyProblems<Number>> driver_steady;