Assembler< Discretization_, Model_ > Class Template Reference#

DiFfRG: DiFfRG::CG::Assembler< Discretization_, Model_ > Class Template Reference
DiFfRG
Discretization Framework for functional Renormalization Group flows
DiFfRG::CG::Assembler< Discretization_, Model_ > Class Template Reference

The basic assembler that can be used for any standard CG scheme with flux and source. More...

#include <cg.hh>

Inheritance diagram for DiFfRG::CG::Assembler< Discretization_, Model_ >:
DiFfRG::FEMAssembler< Discretization_, Model_ > DiFfRG::AbstractAssembler< Discretization_::VectorType, Discretization_::SparseMatrixType, Discretization_::dim >

Public Types

using Discretization = Discretization_
 
using Model = Model_
 
using NumberType = typename Discretization::NumberType
 
using VectorType = typename Discretization::VectorType
 
using SparseMatrixType = typename Discretization::SparseMatrixType
 
using Components = typename Discretization::Components
 
- Public Types inherited from DiFfRG::FEMAssembler< Discretization_, Model_ >
using Discretization = Discretization_
 
using Model = Model_
 
using NumberType = typename Discretization::NumberType
 
using VectorType = typename Discretization::VectorType
 
using SparseMatrixType = typename Discretization::SparseMatrixType
 
using Components = typename Discretization::Components
 
- Public Types inherited from DiFfRG::AbstractAssembler< Discretization_::VectorType, Discretization_::SparseMatrixType, Discretization_::dim >
using NumberType
 

Public Member Functions

 Assembler (Discretization &discretization, Model &model, const ConfigTree &config)
 
virtual void reinit_vector (VectorType &vec) const override
 
virtual void reinit_matrix (SparseMatrixType &matrix) const override
 
virtual MPI_Comm get_communicator () const override
 The communicator this assembler's linear algebra lives on.
 
virtual void reinit_solution_view (SolutionView< VectorType > &view) const override
 
virtual void reinit () override
 Reinitialize the assembler. This is necessary if the mesh has changed, e.g. after a mesh refinement.
 
virtual void rebuild_jacobian_sparsity () override
 
virtual const get_type::SparsityPattern< SparseMatrixType > & get_sparsity_pattern_jacobian () const override
 Obtain the sparsity pattern of the jacobian matrix.
 
virtual const SparseMatrixType & get_mass_matrix () const override
 Obtain the mass matrix.
 
virtual void refinement_indicator (Vector< double > &indicator, const VectorType &solution_global) override
 refinement indicator for adaptivity. Only calls the model's cell_indicator function, as in CG schemes the cell boundary is not discontinuous.
 
virtual void mass (VectorType &mass, const VectorType &solution_global, const VectorType &solution_global_dot, NumberType weight) override
 
virtual void residual (VectorType &residual, const VectorType &solution_global, NumberType weight, const VectorType &solution_global_dot, NumberType weight_mass, const VectorType &variables=VectorType()) override
 
virtual void jacobian_mass (SparseMatrixType &jacobian, const VectorType &solution_global, const VectorType &solution_global_dot, NumberType alpha, NumberType beta) override
 
virtual void jacobian (SparseMatrixType &jacobian, const VectorType &solution_global, NumberType weight, const VectorType &solution_global_dot, NumberType alpha, NumberType beta, const VectorType &variables=VectorType()) override
 
SummaryEvent summary () const override
 
double average_time_reinit () const
 
uint num_reinits () const
 
double average_time_residual_assembly () const
 
uint num_residuals () const
 
double average_time_jacobian_assembly () const
 
uint num_jacobians () const
 
- Public Member Functions inherited from DiFfRG::FEMAssembler< Discretization_, Model_ >
 FEMAssembler (Discretization &discretization, Model &model, const ConfigTree &config)
 
virtual IndexSet get_differential_indices () const override
 Obtain the dofs which contain time derivatives.
 
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
 
const auto & get_discretization () const
 
auto & get_discretization ()
 
virtual void set_time (double t) override
 Set the current time. The assembler should usually just forward this to the numerical model.
 
virtual void refinement_indicator (Vector< double > &, const VectorType &)=0
 
virtual void residual_variables (VectorType &residual, const VectorType &variables, const VectorType &spatial_solution) override
 
virtual void jacobian_variables (FullMatrix< NumberType > &jacobian, const VectorType &variables, const VectorType &spatial_solution) override
 
template<typename RawPotential >
auto evaluate_at (const Point< dim > &x, const typename DoFHandler< dim >::cell_iterator &cell, const VectorType &solution_global, const RawPotential &raw_potential) const
 Evaluate the FE solution and the raw potential at x, which lies in cell.
 
auto extractor_raw_potential (const VectorType &solution_global) const
 The raw potential for the extractors, or an inert placeholder if the model does not read it.
 
void readouts (OutputFrame< dim, VectorType > &data_out, const VectorType &solution_global, const VectorType &variables) const
 
std::pair< Point< dim >, typename DoFHandler< dim >::cell_iterator > resolve_extractor_point (const Point< dim > &EoM_point, const typename DoFHandler< dim >::cell_iterator &EoM_cell_, const VectorType &solution_global) const
 Where the model wants its extractors evaluated, and the cell holding that point.
 
void extract (std::array< NumberType, Components::count_extractors()> &data, const VectorType &solution_global, const VectorType &variables, bool search_EoM, bool set_EoM, bool postprocess) const
 
bool jacobian_extractors (FullMatrix< NumberType > &extractor_jacobian, const VectorType &solution_global, const VectorType &variables)
 
double average_time_variable_residual_assembly ()
 
uint num_variable_residuals () const
 
double average_time_variable_jacobian_assembly ()
 
uint num_variable_jacobians () const
 
- Public Member Functions inherited from DiFfRG::AbstractAssembler< Discretization_::VectorType, Discretization_::SparseMatrixType, Discretization_::dim >
virtual void attach_data_output (OutputFrame< dim, VectorType > &data_out, const VectorType &solution, const VectorType &variables=VectorType(), const VectorType &dt_solution=VectorType(), const VectorType &residual=VectorType())=0
 Contribute the assembler's fields and model readouts to one scoped output frame.
 
virtual void attach_data_output (DataOutput< dim, VectorType > &, const VectorType &, const VectorType &=VectorType(), const VectorType &=VectorType(), const VectorType &=VectorType())=delete
 
virtual void reinit_vector (VectorType &vector) const=0
 Reinitialize an arbitrary vector so that it has the correct size and structure.
 
virtual void reinit_matrix (SparseMatrixType &matrix) const=0
 Reinitialize a matrix to the jacobian's sparsity pattern.
 
virtual void reinit_solution_view (SolutionView< VectorType > &view) const=0
 Establish the layout of a fully-replicated read-only view of the solution.
 
virtual void residual_variables (VectorType &residual, const VectorType &variables, const VectorType &spatial_solution)
 When coupling the spatial discretization to additional variables, this function should calculate the residual for the additional variables.
 
virtual void jacobian_variables (FullMatrix< NumberType > &jacobian, const VectorType &variables, const VectorType &spatial_solution)
 When coupling the spatial discretization to additional variables, this function should calculate the jacobian for the additional variables.
 
void mass (VectorType &mass, const VectorType &solution_global, NumberType weight)
 Calculates the mass \(m_i(u)\) for an ODE.
 
virtual void mass (VectorType &mass, const VectorType &solution_global, const VectorType &solution_global_dot, NumberType weight)=0
 Calculates the mass \(m(u, \partial_t u)\) for a DAE.
 
void residual (VectorType &residual, const VectorType &solution_global, NumberType weight, NumberType weight_mass, const VectorType &variables=VectorType())
 Calculates the residual for an ODE.
 
virtual void residual (VectorType &residual, const VectorType &solution_global, NumberType weight, const VectorType &solution_global_dot, NumberType weight_mass, const VectorType &variables=VectorType())=0
 Calculates the residual for a DAE.
 
void jacobian_mass (SparseMatrixType &jacobian, const VectorType &solution_global, NumberType mass_weight=1.)
 Calculates the jacobian of the mass function for an ODE.
 
virtual void jacobian_mass (SparseMatrixType &jacobian, const VectorType &solution_global, const VectorType &solution_global_dot, NumberType alpha=1., NumberType beta=1.)=0
 Calculates the jacobian of the mass function for a DAE.
 
void jacobian (SparseMatrixType &jacobian, const VectorType &solution_global, NumberType weight, NumberType mass_weight, const VectorType &variables=VectorType())
 Calculates the jacobian of the residual function for an ODE.
 
virtual void jacobian (SparseMatrixType &jacobian, const VectorType &solution_global, NumberType weight, const VectorType &solution_global_dot, NumberType alpha, NumberType beta, const VectorType &variables=VectorType())=0
 Calculates the jacobian of the residual function for a DAE.
 

Static Public Attributes

static constexpr uint dim = Discretization::dim
 
- Static Public Attributes inherited from DiFfRG::FEMAssembler< Discretization_, Model_ >
static constexpr uint dim = Discretization::dim
 

Protected Member Functions

AssemblySchedule schedule_for (const double cost_ns) const
 The mesh_loop schedule for a loop whose cell worker costs cost_ns nanoseconds.
 
- Protected Member Functions inherited from DiFfRG::FEMAssembler< Discretization_, Model_ >
AssemblySchedule schedule_for (const double cost_ns) const
 The mesh_loop schedule for a loop whose cell worker costs cost_ns nanoseconds.
 
void update_assembly_schedules ()
 Re-count the cells the schedules are sized from.
 

Protected Attributes

QGauss< dim > quadrature
 
QGauss< dim - 1 > quadrature_face
 
get_type::SparsityPattern< SparseMatrixType > sparsity_pattern_mass
 
get_type::SparsityPattern< SparseMatrixType > sparsity_pattern_jacobian
 
SparseMatrixType mass_matrix
 
std::vector< double > timings_reinit
 
std::vector< double > timings_residual
 
std::vector< double > timings_jacobian
 
Discretization & discretization
 
const DoFHandler< dim > & dof_handler
 
const FiniteElement< dim > & fe
 
const Mapping< dim > & mapping
 
Model & model
 
std::vector< types::global_dof_index > extractor_dof_indices
 
- Protected Attributes inherited from DiFfRG::FEMAssembler< Discretization_, Model_ >
Discretization & discretization
 
Model & model
 
ReportPort report_port
 
const FiniteElement< dim > & fe
 
const DoFHandler< dim > & dof_handler
 
const Mapping< dim > & mapping
 
uint n_owned_cells = 0
 Cells this rank assembles. Refreshed in reinit(); the per-loop schedules are sized from it.
 
const AssemblyScheduleOverrides schedule_overrides
 
DoFHandler< dim >::cell_iterator EoM_cell
 
DoFHandler< dim >::cell_iterator old_EoM_cell
 
const Config::EoMConfig EoM_config
 
Point< dim > EoM
 
std::optional< Point< dim > > EoM_minimum_guess
 
DiFfRG::internal::PotentialSystemCache< dim, NumberType > potential_cache
 Mesh-dependent half of the potential reconstructions, built once and reused; see PotentialSystemCache.
 
DoFHandler< dim >::cell_iterator old_extractor_cell
 Where the extractors are evaluated. Equal to EoM unless the model defines extractor_point.
 
FullMatrix< NumberType > extractor_jacobian
 
FullMatrix< NumberType > extractor_jacobian_u
 
FullMatrix< NumberType > extractor_jacobian_du
 
FullMatrix< NumberType > extractor_jacobian_ddu
 
std::vector< types::global_dof_index > extractor_dof_indices
 
std::vector< double > timings_variable_residual
 
std::vector< double > timings_variable_jacobian
 

Private Types

using Base = FEMAssembler<Discretization_, Model_>
 

Additional Inherited Members

- Static Protected Member Functions inherited from DiFfRG::FEMAssembler< Discretization_, Model_ >
template<typename... T>
static constexpr auto v_tie (T &&...t)
 
template<typename... T>
static constexpr auto e_tie (T &&...t)
 
- Static Protected Attributes inherited from DiFfRG::FEMAssembler< Discretization_, Model_ >
static constexpr int nothing = 0
 

Detailed Description

template<typename Discretization_, typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
class DiFfRG::CG::Assembler< Discretization_, Model_ >

The basic assembler that can be used for any standard CG scheme with flux and source.

Template Parameters
ModelThe model class which contains the physical equations.

Member Typedef Documentation

◆ Base

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
using DiFfRG::CG::Assembler< Discretization_, Model_ >::Base = FEMAssembler<Discretization_, Model_>
private

◆ Components

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
using DiFfRG::CG::Assembler< Discretization_, Model_ >::Components = typename Discretization::Components

◆ Discretization

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
using DiFfRG::CG::Assembler< Discretization_, Model_ >::Discretization = Discretization_

◆ Model

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
using DiFfRG::CG::Assembler< Discretization_, Model_ >::Model = Model_

◆ NumberType

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
using DiFfRG::CG::Assembler< Discretization_, Model_ >::NumberType = typename Discretization::NumberType

◆ SparseMatrixType

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
using DiFfRG::CG::Assembler< Discretization_, Model_ >::SparseMatrixType = typename Discretization::SparseMatrixType

◆ VectorType

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
using DiFfRG::CG::Assembler< Discretization_, Model_ >::VectorType = typename Discretization::VectorType

Constructor & Destructor Documentation

◆ Assembler()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
DiFfRG::CG::Assembler< Discretization_, Model_ >::Assembler ( Discretization & discretization,
Model & model,
const ConfigTree & config )
inline

Member Function Documentation

◆ average_time_jacobian_assembly()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
double DiFfRG::CG::Assembler< Discretization_, Model_ >::average_time_jacobian_assembly ( ) const
inline

◆ average_time_reinit()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
double DiFfRG::CG::Assembler< Discretization_, Model_ >::average_time_reinit ( ) const
inline

◆ average_time_residual_assembly()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
double DiFfRG::CG::Assembler< Discretization_, Model_ >::average_time_residual_assembly ( ) const
inline

◆ get_communicator()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual MPI_Comm DiFfRG::CG::Assembler< Discretization_, Model_ >::get_communicator ( ) const
inlineoverridevirtual

The communicator this assembler's linear algebra lives on.

MPI_COMM_SELF for a serial discretization, so callers never branch on the build type.

Implements DiFfRG::AbstractAssembler< Discretization_::VectorType, Discretization_::SparseMatrixType, Discretization_::dim >.

◆ get_mass_matrix()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual const SparseMatrixType & DiFfRG::CG::Assembler< Discretization_, Model_ >::get_mass_matrix ( ) const
inlineoverridevirtual

Obtain the mass matrix.

Returns
const SparseMatrixType& The mass matrix

Implements DiFfRG::AbstractAssembler< Discretization_::VectorType, Discretization_::SparseMatrixType, Discretization_::dim >.

◆ get_sparsity_pattern_jacobian()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual const get_type::SparsityPattern< SparseMatrixType > & DiFfRG::CG::Assembler< Discretization_, Model_ >::get_sparsity_pattern_jacobian ( ) const
inlineoverridevirtual

Obtain the sparsity pattern of the jacobian matrix.

Returns
const SparsityPattern<VectorType>& The sparsity pattern of the jacobian matrix

Implements DiFfRG::AbstractAssembler< Discretization_::VectorType, Discretization_::SparseMatrixType, Discretization_::dim >.

◆ jacobian()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual void DiFfRG::CG::Assembler< Discretization_, Model_ >::jacobian ( SparseMatrixType & jacobian,
const VectorType & solution_global,
NumberType weight,
const VectorType & solution_global_dot,
NumberType alpha,
NumberType beta,
const VectorType & variables = VectorType() )
inlineoverridevirtual

◆ jacobian_mass()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual void DiFfRG::CG::Assembler< Discretization_, Model_ >::jacobian_mass ( SparseMatrixType & jacobian,
const VectorType & solution_global,
const VectorType & solution_global_dot,
NumberType alpha,
NumberType beta )
inlineoverridevirtual

◆ mass()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual void DiFfRG::CG::Assembler< Discretization_, Model_ >::mass ( VectorType & mass,
const VectorType & solution_global,
const VectorType & solution_global_dot,
NumberType weight )
inlineoverridevirtual

◆ num_jacobians()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
uint DiFfRG::CG::Assembler< Discretization_, Model_ >::num_jacobians ( ) const
inline

◆ num_reinits()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
uint DiFfRG::CG::Assembler< Discretization_, Model_ >::num_reinits ( ) const
inline

◆ num_residuals()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
uint DiFfRG::CG::Assembler< Discretization_, Model_ >::num_residuals ( ) const
inline

◆ rebuild_jacobian_sparsity()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual void DiFfRG::CG::Assembler< Discretization_, Model_ >::rebuild_jacobian_sparsity ( )
inlineoverridevirtual

◆ refinement_indicator()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual void DiFfRG::CG::Assembler< Discretization_, Model_ >::refinement_indicator ( Vector< double > & indicator,
const VectorType & solution_global )
inlineoverridevirtual

refinement indicator for adaptivity. Only calls the model's cell_indicator function, as in CG schemes the cell boundary is not discontinuous.

Parameters
indicatorThe vector to store the refinement indicator in.
solution_globalThe global solution vector.

◆ reinit()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual void DiFfRG::CG::Assembler< Discretization_, Model_ >::reinit ( )
inlineoverridevirtual

Reinitialize the assembler. This is necessary if the mesh has changed, e.g. after a mesh refinement.

Reimplemented from DiFfRG::FEMAssembler< Discretization_, Model_ >.

◆ reinit_matrix()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual void DiFfRG::CG::Assembler< Discretization_, Model_ >::reinit_matrix ( SparseMatrixType & matrix) const
inlineoverridevirtual

◆ reinit_solution_view()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual void DiFfRG::CG::Assembler< Discretization_, Model_ >::reinit_solution_view ( SolutionView< VectorType > & view) const
inlineoverridevirtual

◆ reinit_vector()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual void DiFfRG::CG::Assembler< Discretization_, Model_ >::reinit_vector ( VectorType & vec) const
inlineoverridevirtual

◆ residual()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
virtual void DiFfRG::CG::Assembler< Discretization_, Model_ >::residual ( VectorType & residual,
const VectorType & solution_global,
NumberType weight,
const VectorType & solution_global_dot,
NumberType weight_mass,
const VectorType & variables = VectorType() )
inlineoverridevirtual

◆ schedule_for()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
AssemblySchedule DiFfRG::FEMAssembler< Discretization_, Model_ >::schedule_for ( const double cost_ns) const
inlineprotected

The mesh_loop schedule for a loop whose cell worker costs cost_ns nanoseconds.

Pure arithmetic on the cached cell count, so it is called per loop rather than stored per cost: the loops do not fall into two classes, and anything between the reference points in namespace assembly_cost gets its own schedule instead of being rounded to one of them.

◆ summary()

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
SummaryEvent DiFfRG::CG::Assembler< Discretization_, Model_ >::summary ( ) const
inlineoverridevirtual

Return aggregate assembly statistics for the run summary.

Reimplemented from DiFfRG::AbstractAssembler< Discretization_::VectorType, Discretization_::SparseMatrixType, Discretization_::dim >.

Member Data Documentation

◆ dim

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
uint DiFfRG::CG::Assembler< Discretization_, Model_ >::dim = Discretization::dim
staticconstexpr

◆ discretization

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
Discretization& DiFfRG::FEMAssembler< Discretization_, Model_ >::discretization
protected

◆ dof_handler

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
const DoFHandler<dim>& DiFfRG::FEMAssembler< Discretization_, Model_ >::dof_handler
protected

◆ extractor_dof_indices

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
std::vector<types::global_dof_index> DiFfRG::FEMAssembler< Discretization_, Model_ >::extractor_dof_indices
protected

◆ fe

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
const FiniteElement<dim>& DiFfRG::FEMAssembler< Discretization_, Model_ >::fe
protected

◆ mapping

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
const Mapping<dim>& DiFfRG::FEMAssembler< Discretization_, Model_ >::mapping
protected

◆ mass_matrix

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
SparseMatrixType DiFfRG::CG::Assembler< Discretization_, Model_ >::mass_matrix
protected

◆ model

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
Model& DiFfRG::FEMAssembler< Discretization_, Model_ >::model
protected

◆ quadrature

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
QGauss<dim> DiFfRG::CG::Assembler< Discretization_, Model_ >::quadrature
protected

◆ quadrature_face

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
QGauss<dim - 1> DiFfRG::CG::Assembler< Discretization_, Model_ >::quadrature_face
protected

◆ sparsity_pattern_jacobian

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
get_type::SparsityPattern<SparseMatrixType> DiFfRG::CG::Assembler< Discretization_, Model_ >::sparsity_pattern_jacobian
protected

◆ sparsity_pattern_mass

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
get_type::SparsityPattern<SparseMatrixType> DiFfRG::CG::Assembler< Discretization_, Model_ >::sparsity_pattern_mass
protected

◆ timings_jacobian

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
std::vector<double> DiFfRG::CG::Assembler< Discretization_, Model_ >::timings_jacobian
protected

◆ timings_reinit

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
std::vector<double> DiFfRG::CG::Assembler< Discretization_, Model_ >::timings_reinit
protected

◆ timings_residual

template<typename Discretization_ , typename Model_ = typename DiFfRG::internal::assembler_model_of<Discretization_>::type>
std::vector<double> DiFfRG::CG::Assembler< Discretization_, Model_ >::timings_residual
protected

The documentation for this class was generated from the following file:
  • /home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/FEM/assembler/cg.hh