AbstractFlowingVariables< NumberType, VectorType_ > Class Template Reference#

DiFfRG: DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ > Class Template Reference
DiFfRG
Discretization Framework for functional Renormalization Group flows
DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ > Class Template Referenceabstract

A class to set up initial data for whatever discretization we have chosen. Also used to switch/manage memory, vectors, matrices over interfaces between spatial discretization and separate variables. More...

#include <abstract_data.hh>

Public Types

using VectorType = VectorType_
 The vector type holding the state.
 
using BlockVectorType = get_type::BlockVectorType<VectorType>
 

Public Member Functions

virtual BlockVectorType & data ()=0
 Obtain the data vector holding both spatial (block 0) and variable (block 1) data.
 
virtual const BlockVectorType & data () const =0
 
virtual VectorType & spatial_data ()=0
 Obtain the spatial data vector.
 
virtual const VectorType & spatial_data () const =0
 
virtual VectorType & variable_data ()=0
 Obtain the variable data vector.
 
virtual const VectorType & variable_data () const =0
 

Detailed Description

template<typename NumberType, typename VectorType_ = dealii::Vector<NumberType>>
class DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ >

A class to set up initial data for whatever discretization we have chosen. Also used to switch/manage memory, vectors, matrices over interfaces between spatial discretization and separate variables.

Template Parameters
DiscretizationSpatial Discretization used in the system

Member Typedef Documentation

◆ BlockVectorType

template<typename NumberType , typename VectorType_ = dealii::Vector<NumberType>>
using DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ >::BlockVectorType = get_type::BlockVectorType<VectorType>

◆ VectorType

template<typename NumberType , typename VectorType_ = dealii::Vector<NumberType>>
using DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ >::VectorType = VectorType_

The vector type holding the state.

Appended with a default so every existing AbstractFlowingVariables<double> keeps its meaning. A distributed run substitutes a PETSc MPI vector here; the matching block type is derived from it rather than hard-wired, because dealii::BlockVector cannot hold a distributed block.

Member Function Documentation

◆ data() [1/2]

template<typename NumberType , typename VectorType_ = dealii::Vector<NumberType>>
virtual const BlockVectorType & DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ >::data ( ) const
pure virtual

◆ data() [2/2]

template<typename NumberType , typename VectorType_ = dealii::Vector<NumberType>>
virtual BlockVectorType & DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ >::data ( )
pure virtual

Obtain the data vector holding both spatial (block 0) and variable (block 1) data.

Returns
BlockVectorType& The data vector.

Implemented in DiFfRG::FE::FlowingVariables< Discretization >, DiFfRG::FlowingVariables< NT >, and DiFfRG::FV::FlowingVariables< Discretization >.

◆ spatial_data() [1/2]

template<typename NumberType , typename VectorType_ = dealii::Vector<NumberType>>
virtual const VectorType & DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ >::spatial_data ( ) const
pure virtual

◆ spatial_data() [2/2]

template<typename NumberType , typename VectorType_ = dealii::Vector<NumberType>>
virtual VectorType & DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ >::spatial_data ( )
pure virtual

Obtain the spatial data vector.

Returns
VectorType& The spatial data vector.

Implemented in DiFfRG::FE::FlowingVariables< Discretization >, DiFfRG::FlowingVariables< NT >, and DiFfRG::FV::FlowingVariables< Discretization >.

◆ variable_data() [1/2]

template<typename NumberType , typename VectorType_ = dealii::Vector<NumberType>>
virtual const VectorType & DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ >::variable_data ( ) const
pure virtual

◆ variable_data() [2/2]

template<typename NumberType , typename VectorType_ = dealii::Vector<NumberType>>
virtual VectorType & DiFfRG::AbstractFlowingVariables< NumberType, VectorType_ >::variable_data ( )
pure virtual

Obtain the variable data vector.

Returns
VectorType& The variable data vector.

Implemented in DiFfRG::FE::FlowingVariables< Discretization >, DiFfRG::FlowingVariables< NT >, and DiFfRG::FV::FlowingVariables< Discretization >.


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