22 #ifndef poisson_include_file
23 #define poisson_include_file
61 template <
typename Integral>
88 initialize(
const std::string &filename);
91 parse_string(
const std::string &par);
98 assemble_system_one_cell(
105 copy_one_cell(
const CopyData ©);
120 assemble_system_on_range(
131 output_results(
const unsigned cycle)
const;
136 std::unique_ptr<FE_Q<dim>>
fe;
137 std::unique_ptr<MappingQGeneric<dim>>
mapping;
146 std::string estimator_type =
"exact";
147 std::string marking_strategy =
"global";
148 std::pair<double, double> coarsening_and_refinement_factors = {0.03, 0.3};
159 unsigned int fe_degree = 1;
160 unsigned int mapping_degree = 1;
161 unsigned int n_refinements = 4;
162 unsigned int n_refinement_cycles = 1;
163 std::string output_filename =
"poisson";
164 int number_of_threads = -1;
166 std::set<types::boundary_id> dirichlet_ids = {0};
169 std::string forcing_term_expression =
"1";
170 std::string coefficient_expression =
"1";
171 std::string exact_solution_expression =
"0";
172 std::string dirichlet_boundary_conditions_expression =
"0";
173 std::string neumann_boundary_conditions_expression =
"0";
174 std::string pre_refinement_expression =
"0";
177 std::string grid_generator_function =
"hyper_cube";
178 std::string grid_generator_arguments =
"0: 1: false";
182 bool use_direct_solver =
true;
186 template <
typename Integral>
std::set< types::boundary_id > neumann_ids
AffineConstraints< double > constraints
std::map< std::string, double > constants
SparseMatrix< double > system_matrix
Vector< double > system_rhs
FunctionParser< dim > coefficient
ParsedConvergenceTable error_table
ParameterAcceptorProxy< ReductionControl > solver_control
FunctionParser< dim > forcing_term
FunctionParser< dim > neumann_boundary_condition
SparsityPattern sparsity_pattern
FunctionParser< dim > dirichlet_boundary_condition
FunctionParser< dim > pre_refinement
DoFHandler< dim > dof_handler
Triangulation< dim > triangulation
Vector< float > error_per_cell
Vector< double > solution
std::unique_ptr< MappingQGeneric< dim > > mapping
std::unique_ptr< FE_Q< dim > > fe
FunctionParser< dim > exact_solution
void run(const std::vector< std::vector< Iterator >> &colored_iterators, Worker worker, Copier copier, const ScratchData &sample_scratch_data, const CopyData &sample_copy_data, const unsigned int queue_length=2 *MultithreadInfo::n_threads(), const unsigned int chunk_size=8)