52 std::vector<std::string>
const & subsection_names_parameters,
53 std::string
const & field,
54 MPI_Comm
const & mpi_comm,
58 domain->setup(grid, mapping, multigrid_mappings, subsection_names_parameters);
61 std::shared_ptr<HelpersALE<dim, Number>> helpers_ale_dummy;
64 pde_operator = create_operator<dim, Number>(grid,
67 domain->get_boundary_descriptor(),
68 domain->get_field_functions(),
69 domain->get_parameters(),
74 matrix_free_data = std::make_shared<MatrixFreeData<dim, Number>>();
75 matrix_free_data->append(pde_operator);
77 matrix_free = std::make_shared<dealii::MatrixFree<dim, Number>>();
78 if(domain->get_parameters().use_cell_based_face_loops)
79 Categorization::do_cell_based_loops(*grid->triangulation, matrix_free_data->data);
80 matrix_free->reinit(*mapping,
81 matrix_free_data->get_dof_handler_vector(),
82 matrix_free_data->get_constraint_vector(),
83 matrix_free_data->get_quadrature_vector(),
84 matrix_free_data->data);
87 pde_operator->setup(matrix_free, matrix_free_data);
90 postprocessor = domain->create_postprocessor();
91 postprocessor->setup(*pde_operator);
94 time_integrator = create_time_integrator<dim, Number>(
95 pde_operator, helpers_ale_dummy, postprocessor, domain->get_parameters(), mpi_comm, is_test);
97 time_integrator->setup(domain->get_parameters().restarted_simulation);
103 std::shared_ptr<Grid<dim>> grid;
104 std::shared_ptr<dealii::Mapping<dim>> mapping;
106 std::shared_ptr<MultigridMappings<dim, Number>> multigrid_mappings;
111 std::shared_ptr<SpatialOperatorBase<dim, Number>> pde_operator;
118 std::shared_ptr<Postprocessor> postprocessor;
123 std::shared_ptr<TimeIntBDF<dim, Number>> time_integrator;
129 std::shared_ptr<MatrixFreeData<dim, Number>> matrix_free_data;
130 std::shared_ptr<dealii::MatrixFree<dim, Number>> matrix_free;
137 Driver(MPI_Comm
const & mpi_comm,
148 print_performance_results(
double const total_time)
const;
152 set_start_time()
const;
155 synchronize_time_step_size()
const;
158 consistency_checks()
const;
161 MPI_Comm
const mpi_comm;
164 dealii::ConditionalOStream pcout;
170 std::shared_ptr<ApplicationBase<dim, Number>> application;
174 bool use_adaptive_time_stepping;
Definition postprocessor_base.h:40
Definition application_base.h:51