dune-pdelab  2.4-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 ()
 
const Traits::MatrixBackendmatrixBackend () const
 

Member Typedef Documentation

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

The global UDG assembler type.

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

The BorderDOFExchanger.

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

The io types of the operator

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

The local assembler type.

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

template<typename GO0 , typename GO1 , bool implicit = true>
typedef GO1::Traits::LocalAssembler Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::LocalAssemblerDT1
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.

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.

template<typename GO0 , typename GO1 , bool implicit = true>
typedef Traits::Range Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::Range
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.

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

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

Member Function Documentation

template<typename GO0 , typename GO1 , bool implicit = true>
Assembler& Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::assembler ( ) const
inline
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).

References Dune::PDELab::OneStepLocalAssembler< OneStepGridOperator, LocalAssemblerDT0, LocalAssemblerDT1 >::DivideOperator1ByDT, and Dune::PDELab::OneStepLocalAssembler< GO, LA0, LA1 >::setDTAssemblingMode().

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
template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::fill_pattern ( Pattern p) const
inline
template<typename GO0 , typename GO1 , bool implicit = true>
Traits::TrialGridFunctionSpace::Traits::SizeType Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::globalSizeU ( ) const
inline
template<typename GO0 , typename GO1 , bool implicit = true>
Traits::TestGridFunctionSpace::Traits::SizeType Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::globalSizeV ( ) const
inline
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
template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::jacobian ( const Domain x,
Jacobian a 
) const
inline
template<typename GO0 , typename GO1 , bool implicit = true>
LocalAssembler& Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::localAssembler ( ) const
inline
template<typename GO0 , typename GO1 , bool implicit = true>
const Traits::MatrixBackend& Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::matrixBackend ( ) const
inline
template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::multiplySpatialTermByDeltaT ( )
inline
template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::postStage ( )
inline

to be called after stage is completed

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

to be called after step is completed

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
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
template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::residual ( const Domain x,
Range r 
) const
inline
template<typename GO0 , typename GO1 , bool implicit = true>
void Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::setMethod ( const TimeSteppingParameterInterface< Real > &  method_)
inline
template<typename GO0 , typename GO1 , bool implicit = true>
Real Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::suggestTimestep ( Real  dt) const
inline
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.

Referenced by Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::globalSizeV().

template<typename GO0 , typename GO1 , bool implicit = true>
const Traits::TrialGridFunctionSpace& Dune::PDELab::OneStepGridOperator< GO0, GO1, implicit >::trialGridFunctionSpace ( ) const
inline
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: