dune-pdelab  2.5-dev
Classes | Public Types | Public Member Functions | List of all members
Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit > Class Template Reference

#include <dune/pdelab/gridoperator/onestep.hh>

Classes

struct  MatrixContainer
 

Public Types

typedef GO0::Pattern Pattern
 The sparsity pattern container for the jacobian matrix. More...
 
typedef GO0::Traits::Assembler Assembler
 The global UDG assembler type. More...
 
typedef OneStepLocalAssembler< OneStepGridOperator, LocalAssemblerDT0, LocalAssemblerDT1LocalAssembler
 The local assembler type. More...
 
typedef GO0::BorderDOFExchanger BorderDOFExchanger
 The BorderDOFExchanger. More...
 
typedef Dune::PDELab::GridOperatorTraits< typename GO0::Traits::TrialGridFunctionSpace, typename GO0::Traits::TestGridFunctionSpace, typename GO0::Traits::MatrixBackend, typename GO0::Traits::DomainField, typename GO0::Traits::RangeField, typename GO0::Traits::JacobianField, typename GO0::Traits::TrialGridFunctionSpaceConstraints, typename GO0::Traits::TestGridFunctionSpaceConstraints, Assembler, LocalAssemblerTraits
 The grid operator traits. More...
 
typedef LocalAssembler::Real Real
 The type for real number e.g. time. More...
 
typedef LocalAssembler::OneStepParameters OneStepParameters
 The type of the one step method parameters. More...
 
typedef GO0::Traits::LocalAssembler LocalAssemblerDT0
 
typedef GO1::Traits::LocalAssembler LocalAssemblerDT1
 
typedef Traits::Domain Domain
 
typedef Traits::Range Range
 
typedef Traits::Jacobian Jacobian
 

Public Member Functions

 OneStepGridOperator (GO0 &go0_, GO1 &go1_)
 Constructor for non trivial constraints. More...
 
void divideMassTermByDeltaT ()
 
void multiplySpatialTermByDeltaT ()
 
const Traits::TrialGridFunctionSpacetrialGridFunctionSpace () const
 Get the trial grid function space. More...
 
const Traits::TestGridFunctionSpacetestGridFunctionSpace () const
 Get the test grid function space. More...
 
Traits::TrialGridFunctionSpace::Traits::SizeType globalSizeU () const
 Get dimension of space u. More...
 
Traits::TestGridFunctionSpace::Traits::SizeType globalSizeV () const
 Get dimension of space v. More...
 
Assemblerassembler () const
 
LocalAssemblerlocalAssembler () const
 
void fill_pattern (Pattern &p) const
 Fill pattern of jacobian matrix. More...
 
void preStage (unsigned int stage, const std::vector< Domain * > &x)
 Assemble constant part of residual. More...
 
void residual (const Domain &x, Range &r) const
 Assemble residual. More...
 
void jacobian (const Domain &x, Jacobian &a) const
 Assemble jacobian. More...
 
void explicit_jacobian_residual (unsigned int stage, const std::vector< Domain * > &x, Jacobian &a, Range &r1, Range &r0)
 Assemble jacobian and residual simultaneously for explicit treatment. More...
 
template<typename F , typename X >
void interpolate (unsigned stage, const X &xold, F &f, X &x) const
 Interpolate constrained values from given function f. More...
 
void setMethod (const TimeSteppingParameterInterface< Real > &method_)
 set time stepping method More...
 
void preStep (const TimeSteppingParameterInterface< Real > &method_, Real time_, Real dt_)
 parametrize assembler with a time-stepping method More...
 
void postStep ()
 to be called after step is completed More...
 
void postStage ()
 to be called after stage is completed More...
 
Real suggestTimestep (Real dt) const
 to be called once before each stage More...
 
void update ()
 
void make_consistent (Jacobian &a) const
 
const Traits::MatrixBackendmatrixBackend () const
 
const LocalAssembler::Traits::TrialGridFunctionSpaceConstraints trialConstraints () const
 

Member Typedef Documentation

◆ Assembler

template<typename GO0 , typename GO1 , bool implicit = true>
typedef GO0::Traits::Assembler Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::Assembler

The global UDG assembler type.

◆ BorderDOFExchanger

template<typename GO0 , typename GO1 , bool implicit = true>
typedef GO0::BorderDOFExchanger Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::BorderDOFExchanger

The BorderDOFExchanger.

◆ Domain

template<typename GO0 , typename GO1 , bool implicit = true>
typedef Traits::Domain Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::Domain

The io types of the operator

◆ Jacobian

template<typename GO0 , typename GO1 , bool implicit = true>
typedef Traits::Jacobian Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::Jacobian

◆ LocalAssembler

template<typename GO0 , typename GO1 , bool implicit = true>
typedef OneStepLocalAssembler<OneStepGridOperator,LocalAssemblerDT0,LocalAssemblerDT1> Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::LocalAssembler

The local assembler type.

◆ LocalAssemblerDT0

template<typename GO0 , typename GO1 , bool implicit = true>
typedef GO0::Traits::LocalAssembler Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::LocalAssemblerDT0

The local assembler types of the subordinate grid operators

◆ LocalAssemblerDT1

template<typename GO0 , typename GO1 , bool implicit = true>
typedef GO1::Traits::LocalAssembler Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::LocalAssemblerDT1

◆ OneStepParameters

template<typename GO0 , typename GO1 , bool implicit = true>
typedef LocalAssembler::OneStepParameters Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::OneStepParameters

The type of the one step method parameters.

◆ Pattern

template<typename GO0 , typename GO1 , bool implicit = true>
typedef GO0::Pattern Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::Pattern

The sparsity pattern container for the jacobian matrix.

◆ Range

template<typename GO0 , typename GO1 , bool implicit = true>
typedef Traits::Range Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::Range

◆ Real

template<typename GO0 , typename GO1 , bool implicit = true>
typedef LocalAssembler::Real Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::Real

The type for real number e.g. time.

◆ Traits

template<typename GO0 , typename GO1 , bool implicit = true>
typedef Dune::PDELab::GridOperatorTraits<typename GO0::Traits::TrialGridFunctionSpace, typename GO0::Traits::TestGridFunctionSpace, typename GO0::Traits::MatrixBackend, typename GO0::Traits::DomainField, typename GO0::Traits::RangeField, typename GO0::Traits::JacobianField, typename GO0::Traits::TrialGridFunctionSpaceConstraints, typename GO0::Traits::TestGridFunctionSpaceConstraints, Assembler, LocalAssembler> Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::Traits

The grid operator traits.

Constructor & Destructor Documentation

◆ OneStepGridOperator()

template<typename GO0 , typename GO1 , bool implicit = true>
Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::OneStepGridOperator ( GO0 &  go0_,
GO1 &  go1_ 
)
inline

Constructor for non trivial constraints.

Member Function Documentation

◆ assembler()

template<typename GO0 , typename GO1 , bool implicit = true>
Assembler& Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::assembler ( ) const
inline

◆ divideMassTermByDeltaT()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::divideMassTermByDeltaT ( )
inline

Determines whether the time step size is multiplied to the mass term (first order time derivative) or the elliptic term (zero-th order time derivative).

◆ explicit_jacobian_residual()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::explicit_jacobian_residual ( unsigned int  stage,
const std::vector< Domain * > &  x,
Jacobian a,
Range r1,
Range r0 
)
inline

Assemble jacobian and residual simultaneously for explicit treatment.

◆ fill_pattern()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::fill_pattern ( Pattern p) const
inline

Fill pattern of jacobian matrix.

◆ globalSizeU()

template<typename GO0 , typename GO1 , bool implicit = true>
Traits::TrialGridFunctionSpace::Traits::SizeType Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::globalSizeU ( ) const
inline

Get dimension of space u.

◆ globalSizeV()

template<typename GO0 , typename GO1 , bool implicit = true>
Traits::TestGridFunctionSpace::Traits::SizeType Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::globalSizeV ( ) const
inline

Get dimension of space v.

◆ interpolate()

template<typename GO0 , typename GO1 , bool implicit = true>
template<typename F , typename X >
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::interpolate ( unsigned  stage,
const X &  xold,
F &  f,
X &  x 
) const
inline

Interpolate constrained values from given function f.

◆ jacobian()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::jacobian ( const Domain x,
Jacobian a 
) const
inline

Assemble jacobian.

◆ localAssembler()

template<typename GO0 , typename GO1 , bool implicit = true>
LocalAssembler& Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::localAssembler ( ) const
inline

◆ make_consistent()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::make_consistent ( Jacobian a) const
inline

◆ matrixBackend()

template<typename GO0 , typename GO1 , bool implicit = true>
const Traits::MatrixBackend& Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::matrixBackend ( ) const
inline

◆ multiplySpatialTermByDeltaT()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::multiplySpatialTermByDeltaT ( )
inline

◆ postStage()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::postStage ( )
inline

to be called after stage is completed

◆ postStep()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::postStep ( )
inline

to be called after step is completed

◆ preStage()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::preStage ( unsigned int  stage,
const std::vector< Domain * > &  x 
)
inline

Assemble constant part of residual.

◆ preStep()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::preStep ( const TimeSteppingParameterInterface< Real > &  method_,
Real  time_,
Real  dt_ 
)
inline

parametrize assembler with a time-stepping method

◆ residual()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::residual ( const Domain x,
Range r 
) const
inline

Assemble residual.

◆ setMethod()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::setMethod ( const TimeSteppingParameterInterface< Real > &  method_)
inline

set time stepping method

◆ suggestTimestep()

template<typename GO0 , typename GO1 , bool implicit = true>
Real Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::suggestTimestep ( Real  dt) const
inline

to be called once before each stage

◆ testGridFunctionSpace()

template<typename GO0 , typename GO1 , bool implicit = true>
const Traits::TestGridFunctionSpace& Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::testGridFunctionSpace ( ) const
inline

Get the test grid function space.

◆ trialConstraints()

template<typename GO0 , typename GO1 , bool implicit = true>
const LocalAssembler::Traits::TrialGridFunctionSpaceConstraints Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::trialConstraints ( ) const
inline

◆ trialGridFunctionSpace()

template<typename GO0 , typename GO1 , bool implicit = true>
const Traits::TrialGridFunctionSpace& Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::trialGridFunctionSpace ( ) const
inline

Get the trial grid function space.

◆ update()

template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::update ( )
inline

The documentation for this class was generated from the following file: