DOpE
Public Member Functions
DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim > Class Template Reference

#include <mol_statespacetimehandler.h>

Inheritance diagram for DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >:
DOpE::StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim > DOpE::SpaceTimeHandlerBase< VECTOR >

Public Member Functions

 MethodOfLines_StateSpaceTimeHandler (dealii::Triangulation< dealdim > &triangulation, const FE< dealdim, dealdim > &state_fe, bool flux_pattern=false, const ActiveFEIndexSetterInterface< dealdim > &index_setter=ActiveFEIndexSetterInterface< dealdim >())
 
 MethodOfLines_StateSpaceTimeHandler (dealii::Triangulation< dealdim > &triangulation, const FE< dealdim, dealdim > &state_fe, dealii::Triangulation< 1 > &times, bool flux_pattern=false, const ActiveFEIndexSetterInterface< dealdim > &index_setter=ActiveFEIndexSetterInterface< dealdim >())
 
 MethodOfLines_StateSpaceTimeHandler (dealii::Triangulation< dealdim > &triangulation, const DOpEWrapper::Mapping< dealdim, DH > &mapping, const FE< dealdim, dealdim > &state_fe, bool flux_pattern=false, const ActiveFEIndexSetterInterface< dealdim > &index_setter=ActiveFEIndexSetterInterface< dealdim >())
 
 MethodOfLines_StateSpaceTimeHandler (dealii::Triangulation< dealdim > &triangulation, const DOpEWrapper::Mapping< dealdim, DH > &mapping, const FE< dealdim, dealdim > &state_fe, dealii::Triangulation< 1 > &times, bool flux_pattern=false, const ActiveFEIndexSetterInterface< dealdim > &index_setter=ActiveFEIndexSetterInterface< dealdim >())
 
virtual ~MethodOfLines_StateSpaceTimeHandler ()
 
void ReInit (unsigned int state_n_blocks, const std::vector< unsigned int > &state_block_component)
 
const DOpEWrapper::DoFHandler
< dealdim, DH > & 
GetStateDoFHandler () const
 
const DOpEWrapper::Mapping
< dealdim, DH > & 
GetMapping () const
 
unsigned int GetStateDoFsPerBlock (unsigned int b, int=-1) const
 
const std::vector< unsigned int > & GetStateDoFsPerBlock (int=-1) const
 
const dealii::ConstraintMatrix & GetStateDoFConstraints () const
 
virtual void InterpolateState (VECTOR &result, const std::vector< VECTOR * > &local_vectors, double t, const TimeIterator &it) const
 
unsigned int GetStateNDoFs (int=-1) const
 
const std::vector< Point
< dealdim > > & 
GetMapDoFToSupportPoints ()
 
void ComputeStateSparsityPattern (SPARSITYPATTERN &sparsity) const
 
const FE< dealdim, dealdim > & GetFESystem (std::string name) const
 
void RefineSpace (DOpEtypes::RefinementType=DOpEtypes::RefinementType::global)
 
void RefineSpace (const RefinementContainer &ref_container)
 
unsigned int NewTimePointToOldTimePoint (unsigned int t) const
 
void SpatialMeshTransferState (const VECTOR &old_values, VECTOR &new_values) const
 
void SetUserDefinedDoFConstraints (UserDefinedDoFConstraints< DH, dealdim > &user_defined_dof_constr)
 
void SetSparsityMaker (SparsityMaker< DH, dealdim > &sparsity_maker)
 
- Public Member Functions inherited from DOpE::StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >
 StateSpaceTimeHandler ()
 
 StateSpaceTimeHandler (dealii::Triangulation< 1 > &times)
 
 StateSpaceTimeHandler (const ActiveFEIndexSetterInterface< dealdim > &index_setter)
 
 StateSpaceTimeHandler (dealii::Triangulation< 1 > &times, const ActiveFEIndexSetterInterface< dealdim > &index_setter)
 
virtual ~StateSpaceTimeHandler ()
 
const std::vector< const
DOpEWrapper::DoFHandler
< dealdim, DH > * > & 
GetDoFHandler () const
 
std::vector< typename
DOpEWrapper::DoFHandler
< dealdim, DH >
::active_cell_iterator > 
GetDoFHandlerBeginActive () const
 
std::vector< typename
DOpEWrapper::DoFHandler
< dealdim, DH >
::active_cell_iterator > 
GetDoFHandlerEnd () const
 
std::vector< typename
DOpEWrapper::DoFHandler
< dealdim, DH >::cell_iterator > 
GetDoFHandlerBeginActiveAllLevels () const
 
std::vector< typename
DOpEWrapper::DoFHandler
< dealdim, DH >::cell_iterator > 
GetDoFHandlerEndAllLevels () const
 
unsigned int GetStateIndex ()
 
const
ActiveFEIndexSetterInterface
< dealdim > & 
GetFEIndexSetter () const
 
void SetActiveFEIndicesState (DOpEWrapper::DoFHandler< dealdim, DH > &dof_handler)
 
virtual const
dealii::Triangulation< dealdim > & 
GetTriangulation () const
 
DOpEWrapper::DataOut< dealdim,
DH > & 
GetDataOut ()
 
- Public Member Functions inherited from DOpE::SpaceTimeHandlerBase< VECTOR >
 SpaceTimeHandlerBase (DOpEtypes::ControlType control_type=DOpEtypes::stationary)
 
 SpaceTimeHandlerBase (dealii::Triangulation< 1 > &times, DOpEtypes::ControlType type=DOpEtypes::stationary)
 
 SpaceTimeHandlerBase (dealii::Triangulation< 1 > &times, const dealii::FiniteElement< 1 > &fe, DOpEtypes::ControlType type=DOpEtypes::stationary)
 
virtual ~SpaceTimeHandlerBase ()
 
void ReInitTime ()
 
unsigned int GetMaxTimePoint () const
 
unsigned int GetNbrOfIntervals () const
 
void SetInterval (const TimeIterator &it)
 
const TimeIteratorGetInterval () const
 
double GetTime (unsigned int time_point) const
 
const TimeDoFHandlerGetTimeDoFHandler () const
 
const std::vector< double > & GetTimes () const
 
void GetTimes (const TimeIterator &interval, std::vector< double > &local_times) const
 
bool IsValidStateTicket (unsigned int &ticket) const
 
bool IsValidControlTicket (unsigned int &ticket) const
 
DOpEtypes::ControlType GetControlType () const
 
virtual void InterpolateControl (VECTOR &, const std::vector< VECTOR * > &, double, const TimeIterator &) const
 
virtual void InterpolateConstraint (VECTOR &, const std::vector< VECTOR * > &, double, const TimeIterator &) const
 
virtual unsigned int GetControlNDoFs (int=-1) const
 
virtual unsigned int GetConstraintNDoFs (std::string) const
 
virtual const std::vector
< unsigned int > & 
GetControlDoFsPerBlock (int=-1) const
 
virtual const std::vector
< unsigned int > & 
GetConstraintDoFsPerBlock (std::string) const
 
virtual unsigned int GetNGlobalConstraints () const
 
virtual unsigned int GetNLocalConstraints () const
 
double GetStepSize () const
 
double GetNextStepSize () const
 
double GetPreviousStepSize () const
 
virtual void SpatialMeshTransferControl (const VECTOR &, VECTOR &) const
 
void RefineTime (DOpEtypes::RefinementType=DOpEtypes::RefinementType::global)
 
void RefineTime (const RefinementContainer &ref_container)
 

Additional Inherited Members

- Protected Member Functions inherited from DOpE::SpaceTimeHandlerBase< VECTOR >
void IncrementStateTicket ()
 
void IncrementControlTicket ()
 
- Protected Attributes inherited from DOpE::StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >
DOpEWrapper::DataOut< dealdim, DH > data_out_
 
const
ActiveFEIndexSetterInterface
< dealdim > * 
fe_index_setter_
 
std::vector< const
DOpEWrapper::DoFHandler
< dealdim, DH > * > 
domain_dofhandler_vector_
 

Detailed Description

template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN, typename VECTOR, int dealdim>
class DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >

Implements a Space Time Handler with a Method of Lines discretization. This means there is only one fixed mesh for the spatial domain. This Space Time Handler has knowlege of only one variable, namely the solution to a PDE.

For the detailed comments, please see the documentation of MethodOfLines_SpaceTimeHandler

Constructor & Destructor Documentation

template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::MethodOfLines_StateSpaceTimeHandler ( dealii::Triangulation< dealdim > &  triangulation,
const FE< dealdim, dealdim > &  state_fe,
bool  flux_pattern = false,
const ActiveFEIndexSetterInterface< dealdim > &  index_setter = ActiveFEIndexSetterInterface<dealdim>() 
)
inline
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::MethodOfLines_StateSpaceTimeHandler ( dealii::Triangulation< dealdim > &  triangulation,
const FE< dealdim, dealdim > &  state_fe,
dealii::Triangulation< 1 > &  times,
bool  flux_pattern = false,
const ActiveFEIndexSetterInterface< dealdim > &  index_setter = ActiveFEIndexSetterInterface<dealdim>() 
)
inline
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::MethodOfLines_StateSpaceTimeHandler ( dealii::Triangulation< dealdim > &  triangulation,
const DOpEWrapper::Mapping< dealdim, DH > &  mapping,
const FE< dealdim, dealdim > &  state_fe,
bool  flux_pattern = false,
const ActiveFEIndexSetterInterface< dealdim > &  index_setter = ActiveFEIndexSetterInterface<dealdim>() 
)
inline
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::MethodOfLines_StateSpaceTimeHandler ( dealii::Triangulation< dealdim > &  triangulation,
const DOpEWrapper::Mapping< dealdim, DH > &  mapping,
const FE< dealdim, dealdim > &  state_fe,
dealii::Triangulation< 1 > &  times,
bool  flux_pattern = false,
const ActiveFEIndexSetterInterface< dealdim > &  index_setter = ActiveFEIndexSetterInterface<dealdim>() 
)
inline
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
virtual DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::~MethodOfLines_StateSpaceTimeHandler ( )
inlinevirtual

Member Function Documentation

template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
void DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::ComputeStateSparsityPattern ( SPARSITYPATTERN &  sparsity) const
inlinevirtual

Computes the current sparsity pattern for the state variable

Implements DOpE::StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >.

template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
const FE<dealdim, dealdim>& DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::GetFESystem ( std::string  name) const
inlinevirtual
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
const std::vector<Point<dealdim> >& DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::GetMapDoFToSupportPoints ( )
inlinevirtual
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
const DOpEWrapper::Mapping<dealdim, DH>& DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::GetMapping ( ) const
inlinevirtual
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
const dealii::ConstraintMatrix& DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::GetStateDoFConstraints ( ) const
inlinevirtual
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
const DOpEWrapper::DoFHandler<dealdim, DH>& DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::GetStateDoFHandler ( ) const
inlinevirtual
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
unsigned int DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::GetStateDoFsPerBlock ( unsigned int  b,
int  = -1 
) const
inlinevirtual
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
const std::vector<unsigned int>& DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::GetStateDoFsPerBlock ( int  = -1) const
inlinevirtual

Implementation of virtual function in StateSpaceTimeHandlerBase

Implements DOpE::SpaceTimeHandlerBase< VECTOR >.

template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
unsigned int DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::GetStateNDoFs ( int  = -1) const
inlinevirtual

Implementation of virtual function in StateSpaceTimeHandlerBase

Implements DOpE::SpaceTimeHandlerBase< VECTOR >.

template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
virtual void DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::InterpolateState ( VECTOR &  result,
const std::vector< VECTOR * > &  local_vectors,
double  t,
const TimeIterator it 
) const
inlinevirtual

Implementation of virtual function in StateSpaceTimeHandlerBase

Implements DOpE::SpaceTimeHandlerBase< VECTOR >.

template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
unsigned int DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::NewTimePointToOldTimePoint ( unsigned int  t) const
inlinevirtual

Implementation of virtual function in StateSpaceTimeHandlerBase

Implements DOpE::SpaceTimeHandlerBase< VECTOR >.

template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
void DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::RefineSpace ( DOpEtypes::RefinementType  = DOpEtypes::RefinementType::global)
inline

This Function is used to refine the spatial mesh globally. After calling a refinement function a reinitialization is required!

Parameters
ref_typeA DOpEtypes::RefinementType telling how to refine the spatial mesh. Only DOpEtypes::RefinementType::global is allowed in this method, else one has to specify additionally a RefinementContainer, see the alternative RefineSpace method.
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
void DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::RefineSpace ( const RefinementContainer ref_container)
inline

This Function is used to refine the spatial mesh. After calling a refinement function a reinitialization is required!

Parameters
ref_containerSteers the local mesh refinement. Currently availabe are RefinementContainer (for global refinement), RefineFixedFraction, RefineFixedNumber and RefineOptimized.
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
void DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::ReInit ( unsigned int  state_n_blocks,
const std::vector< unsigned int > &  state_block_component 
)
inlinevirtual
template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
void DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::SetSparsityMaker ( SparsityMaker< DH, dealdim > &  sparsity_maker)
inline

Through this function one commits a sparsity_maker to the class. With the help of the sparsity_maker one has the capability to create non-standard sparsity patterns. This function must be called prior to ReInit.

template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
void DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::SetUserDefinedDoFConstraints ( UserDefinedDoFConstraints< DH, dealdim > &  user_defined_dof_constr)
inline

Through this function one commits a UserDefinedDoFConstraints object to the class. With the help of the user_defined_dof_constr one has the capability to impose additional constraints on the state-dofs (for example a pressure filter for the stokes problem). This function must be called prior to ReInit.

template<template< int, int > class FE, template< int, int > class DH, typename SPARSITYPATTERN , typename VECTOR , int dealdim>
void DOpE::MethodOfLines_StateSpaceTimeHandler< FE, DH, SPARSITYPATTERN, VECTOR, dealdim >::SpatialMeshTransferState ( const VECTOR &  old_values,
VECTOR &  new_values 
) const
inlinevirtual

Implementation of virtual function in SpaceTimeHandlerBase

Reimplemented from DOpE::SpaceTimeHandlerBase< VECTOR >.


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