/home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/variables/assembler/variables.hh Source File#
|
DiFfRG
Discretization Framework for functional Renormalization Group flows
|
variables.hh
Go to the documentation of this file.
35 template <typename Model_> class Assembler : public AbstractAssembler<Vector<double>, SparseMatrix<double>, 0>
74 virtual void attach_data_output(OutputFrame<dim, VectorType> &data_out, const VectorType &solution,
93 virtual void residual_variables(VectorType &residual, const VectorType &variables, const VectorType &) override
111 void readouts(OutputFrame<dim, VectorType> &data_out, const VectorType &, const VectorType &variables) const
128 virtual void residual(VectorType &, const VectorType &, NumberType, const VectorType &, NumberType,
134 virtual void jacobian_mass(SparseMatrix<NumberType> &, const VectorType &, const VectorType &, NumberType,
139 virtual void jacobian(SparseMatrix<NumberType> &, const VectorType &, NumberType, const VectorType &, NumberType,
This is the general assembler interface for any kind of discretization. An assembler is responsible f...
Definition abstract_assembler.hh:54
A hierarchical configuration tree, readable from JSON and TOML files.
Definition config_tree.hh:32
Definition output_session.hh:42
void register_readout(const std::string &id)
Definition output_session.hh:154
A read-only, fully-replicated view of the solution.
Definition solution_view.hh:48
void reinit(const dealii::IndexSet &, const dealii::IndexSet &, MPI_Comm)
Establish the layout. No-op for the serial policy.
Definition solution_view.hh:58
The basic assembler that can be used for any standard CG scheme with flux and source.
Definition variables.hh:36
virtual void reinit() override
Reinitialize the assembler. This is necessary if the mesh has changed, e.g. after a mesh refinement.
Definition variables.hh:83
virtual void reinit_vector(VectorType &vec) const override
Reinitialize an arbitrary vector so that it has the correct size and structure.
Definition variables.hh:57
virtual void residual_variables(VectorType &residual, const VectorType &variables, const VectorType &) override
When coupling the spatial discretization to additional variables, this function should calculate the ...
Definition variables.hh:93
std::vector< double > timings_jacobian
Definition variables.hh:180
virtual void attach_data_output(OutputFrame< dim, VectorType > &data_out, const VectorType &solution, const VectorType &variables, const VectorType &dt_solution=VectorType(), const VectorType &residual=VectorType()) override
Contribute the assembler's fields and model readouts to one scoped output frame.
Definition variables.hh:74
virtual void set_time(double t) override
Set the current time. The assembler should usually just forward this to the numerical model.
Definition variables.hh:85
virtual void residual(VectorType &, const VectorType &, NumberType, const VectorType &, NumberType, const VectorType &variables=VectorType()) override
Definition variables.hh:128
virtual IndexSet get_differential_indices() const override
Obtain the dofs which contain time derivatives.
Definition variables.hh:72
virtual void reinit_solution_view(SolutionView< VectorType > &view) const override
Establish the layout of a fully-replicated read-only view of the solution.
Definition variables.hh:67
virtual MPI_Comm get_communicator() const override
The communicator this assembler's linear algebra lives on.
Definition variables.hh:64
double average_time_jacobian_assembly() const
Definition variables.hh:162
SparsityPattern sparsity_pattern_mass
Definition variables.hh:175
virtual void reinit_matrix(SparseMatrixType &matrix) const override
Reinitialize a matrix to the jacobian's sparsity pattern.
Definition variables.hh:60
virtual void jacobian_mass(SparseMatrix< NumberType > &, const VectorType &, const VectorType &, NumberType, NumberType) override
Definition variables.hh:134
virtual const SparseMatrix< NumberType > & get_mass_matrix() const override
Obtain the mass matrix.
Definition variables.hh:91
Assembler(Model &model, const ConfigTree &)
Definition variables.hh:50
SummaryEvent summary() const override
Definition variables.hh:144
typename Model_::Components Components
Definition variables.hh:45
SparsityPattern sparsity_pattern_jacobian
Definition variables.hh:176
std::vector< double > timings_residual
Definition variables.hh:179
void readouts(OutputFrame< dim, VectorType > &data_out, const VectorType &, const VectorType &variables) const
Definition variables.hh:111
SparseMatrix< NumberType > mass_matrix
Definition variables.hh:177
virtual void jacobian(SparseMatrix< NumberType > &, const VectorType &, NumberType, const VectorType &, NumberType, NumberType, const VectorType &variables=VectorType()) override
Definition variables.hh:139
virtual void mass(VectorType &, const VectorType &, const VectorType &, NumberType) override
Definition variables.hh:126
SparseMatrix< double > SparseMatrixType
Definition variables.hh:43
virtual const SparsityPattern & get_sparsity_pattern_jacobian() const override
Obtain the sparsity pattern of the jacobian matrix.
Definition variables.hh:87
double average_time_residual_assembly() const
Definition variables.hh:152
virtual void jacobian_variables(FullMatrix< NumberType > &jacobian, const VectorType &variables, const VectorType &) override
Definition variables.hh:102
constexpr void validate_readout_helper_arity()
Definition abstract_assembler.hh:17
Definition complex_math.hh:10
void flush_maps()
Land all outstanding map() results. See MapCompletion.
Definition map_completion.hh:190
Definition tuples.hh:34
Definition run_reporter.hh:73
SummaryEvent & timing(const std::string_view name, const double average_ms, const std::size_t calls)
Definition run_reporter.hh:78
A class to store a tuple with elements that can be accessed by name. The names are stored as FixedStr...
Definition tuples.hh:56
Generated by