|
dune-fem 2.8.0
|
#include <dune/fem/function/adaptivefunction/adaptivefunction.hh>

Classes | |
| class | DofStorageWrapper |
| wrapper class to create fake DofStorage from DofType* More... | |
Public Types | |
| typedef BaseType::DiscreteFunctionSpaceType | DiscreteFunctionSpaceType |
| typedef BaseType::DofVectorType | DofVectorType |
| typedef BaseType::DofType | DofType |
| typedef MutableBlockVector< DynamicArray< DofType >, DiscreteFunctionSpaceType::localBlockSize > | MutableDofVectorType |
| typedef BaseType::Traits | Traits |
| typedef AdaptiveDiscreteFunction< DiscreteFunctionSpace > | DiscreteFunctionType |
| type of the discrete function (Barton-Nackman parameter) | |
| typedef BaseType::DiscreteFunctionInterfaceType | DiscreteFunctionInterfaceType |
| typedef BaseType::GridPartType | GridPartType |
| type of the underlying grid part | |
| typedef DiscreteFunctionSpaceType::DomainType | DomainType |
| type of domain vector | |
| typedef DiscreteFunctionSpaceType::RangeType | RangeType |
| type of range vector | |
| typedef DiscreteFunctionSpaceType::JacobianRangeType | JacobianRangeType |
| type of jacobian | |
| typedef DiscreteFunctionSpaceType::HessianRangeType | HessianRangeType |
| type of hessian | |
| typedef DiscreteFunctionSpaceType::DomainFieldType | DomainFieldType |
| type of domain field (usually a float type) | |
| typedef DiscreteFunctionSpaceType::RangeFieldType | RangeFieldType |
| type of range field (usually a float type) | |
| typedef Traits::DofIteratorType | DofIteratorType |
| type of the dof iterator | |
| typedef Traits::ConstDofIteratorType | ConstDofIteratorType |
| type of the const dof iterator | |
| typedef Traits::LocalDofVectorType | LocalDofVectorType |
| type of LocalDofVector | |
| typedef Traits::LocalDofVectorAllocatorType | LocalDofVectorAllocatorType |
| type of LocalDofVector | |
| typedef BaseType::LocalFunctionType | LocalFunctionType |
| type of local functions | |
| typedef LocalFunctionType::LocalCoordinateType | LocalCoordinateType |
| typedef BaseType::DofBlockType | DofBlockType |
| typedef BaseType::ConstDofBlockType | ConstDofBlockType |
| typedef BaseType::DofBlockPtrType | DofBlockPtrType |
| typedef BaseType::ConstDofBlockPtrType | ConstDofBlockPtrType |
| typedef BaseType::EntityType | EntityType |
| typedef DofVectorType::SizeType | SizeType |
| size type of the block vector | |
| typedef DiscreteFunctionSpaceType::FunctionSpaceType | FunctionSpaceType |
| type of associated function space | |
| typedef GridPartType::GridViewType | GridView |
| typedef DiscreteFunctionSpaceType::GridType | GridType |
| type of the underlying grid | |
| typedef BaseType::MappingType | MappingType |
| type of mapping base class for this discrete function | |
| typedef DiscreteFunctionSpaceType::LocalBlockIndices | BlockIndices |
| typedef LoadBalanceLeafData< ThisType > | DefaultLoadBalanceContainsCheckType |
Public Member Functions | |
| AdaptiveDiscreteFunction (const std::string &name, const DiscreteFunctionSpaceType &space) | |
| Constructor to use if the vector storing the dofs does not exist yet. | |
| AdaptiveDiscreteFunction (const std::string &name, const DiscreteFunctionSpaceType &space, const DofType *data) | |
| Constructor to use if the vector storing the dofs already exists. | |
| AdaptiveDiscreteFunction (const std::string &name, const DiscreteFunctionSpaceType &space, DofVectorType &dofVector) | |
| Constructor to use if the vector storing the dofs already exists. | |
| AdaptiveDiscreteFunction (const ThisType &other) | |
| Copy constructor. | |
| AdaptiveDiscreteFunction (ThisType &&other) | |
| Move constructor. | |
| AdaptiveDiscreteFunction ()=delete | |
| ThisType & | operator= (const ThisType &)=delete |
| ThisType & | operator= (ThisType &&)=delete |
| DofType * | leakPointer () |
| const DofType * | leakPointer () const |
| DofVectorType & | dofVector () |
| const DofVectorType & | dofVector () const |
| void | enableDofCompression () |
| Enable this discrete function for dof compression, i.e. during grid changes a dof compression is done when the DofManagers compress is called. | |
| template<class DFType > | |
| void | assign (const DiscreteFunctionInterface< DFType > &g) |
| void | assign (const DiscreteFunctionType &g) |
| const std::string & | name () const |
| obtain the name of the discrete function | |
| std::string & | name () |
| obtain the name of the discrete function | |
| constexpr int | order () const |
| obtain an upper bound on the polynomial order of the underlying space. | |
| bool | continuous () const |
| returns true if the space contains only globally continuous functions | |
| const DiscreteFunctionSpaceType & | space () const |
| obtain a reference to the corresponding DiscreteFunctionSpace | |
| const GridPartType & | gridPart () const |
| obtain a reference to the underlying grid part | |
| LocalFunctionType | localFunction (const EntityType &entity) |
| obtain a local function for an entity (read-write) | |
| const LocalFunctionType | localFunction (const EntityType &entity) const |
| obtain a local function for an entity (read-write) | |
| LocalFunctionType | localFunction () |
| obtain an uninitialized local function (read-write) | |
| const LocalFunctionType | localFunction () const |
| obtain an uninitialized local function (read-write) | |
| void | clear () |
| set all degrees of freedom to zero | |
| int | blocks () const |
| obtain total number of blocks, i.e. size / blockSize. | |
| DofBlockPtrType | block (unsigned int index) |
| ConstDofBlockPtrType | block (unsigned int index) const |
| SizeType | size () const |
| Return the number of blocks in the block vector. | |
| ConstDofIteratorType | dbegin () const |
| Obtain the constant iterator pointing to the first dof. | |
| DofIteratorType | dbegin () |
| Obtain the non-constant iterator pointing to the first dof. | |
| ConstDofIteratorType | dend () const |
| Obtain the constant iterator pointing to the last dof. | |
| DofIteratorType | dend () |
| Obtain the non-constant iterator pointing to the last dof. | |
| void | axpy (const RangeFieldType &s, const DiscreteFunctionInterface< DFType > &g) |
| void | axpy (const RangeFieldType &s, const DiscreteFunctionInterfaceType &g) |
| void | axpy (const RangeFieldType &s, const DiscreteFunctionInterfaceType &g) |
| axpy operation | |
| RangeFieldType | scalarProductDofs (const DiscreteFunctionInterface< DFType > &other) const |
| Scalar product between the DoFs of two discrete functions. | |
| Dune::FieldTraits< RangeFieldType >::real_type | normSquaredDofs () const |
| Squared small l^2 norm of all dofs. | |
| void | print (std ::ostream &out) const |
| print all DoFs to a stream (for debugging purposes) | |
| bool | dofsValid () const |
| check for NaNs | |
| CommDataHandle< Operation >::Type | dataHandle (const Operation &operation) |
| return reference to data handle object | |
| DiscreteFunctionDefault< AdaptiveDiscreteFunction< DiscreteFunctionSpace > >::template CommDataHandle< Operation >::Type | dataHandle (const Operation &operation) |
| void | communicate () |
| do default communication of space for this discrete function | |
| void | evaluate (const DomainType &x, RangeType &value) const |
| void | jacobian (const DomainType &x, JacobianRangeType &jacobian) const |
| void | hessian (const DomainType &x, HessianRangeType &hessian) const |
| evaluate the hessian of the function (const DomainType &x,HessianRangeType &hessian) const | |
| DiscreteFunctionType & | operator+= (const DiscreteFunctionInterface< DFType > &g) |
| add another discrete function to this one | |
| DiscreteFunctionType & | operator+= (const DiscreteFunctionType &g) |
| add another discrete function to this one | |
| DiscreteFunctionType & | operator-= (const DiscreteFunctionInterface< DFType > &g) |
| substract all degrees of freedom from given discrete function using the dof iterators | |
| DiscreteFunctionType & | operator-= (const DiscreteFunctionType &g) |
| substract all degrees of freedom from given discrete function using the dof iterators | |
| DiscreteFunctionType & | operator*= (const RangeFieldType &scalar) |
| multiply all DoFs with a scalar factor | |
| DiscreteFunctionType & | operator/= (const RangeFieldType &scalar) |
| devide all DoFs by a scalar factor | |
| void | read (InStreamInterface< StreamTraits > &in) |
| read the discrete function from a stream | |
| void | write (OutStreamInterface< StreamTraits > &out) const |
| write the discrete function into a stream | |
| void | addScaledLocalDofs (const EntityType &entity, const RangeFieldType &s, const LocalDofs &localDofs) |
| add scaled local Dofs to dof vector associated with the entity | |
| void | addLocalDofs (const EntityType &entity, const LocalDofs &localDofs) |
| add local Dofs to dof vector associated with the entity | |
| void | setLocalDofs (const EntityType &entity, const LocalDofs &localDofs) |
| set local Dofs to dof vector associated with the entity | |
| void | getLocalDofs (const EntityType &entity, Vector &localDofs) const |
| fill local Dofs to dof vector associated with the entity | |
| bool | compare (const DiscreteFunctionInterface< DFType > &g) const |
| LocalDofVectorAllocatorType & | localDofVectorAllocator () const |
| obtain the local function storage | |
| void | beginAssemble () |
| Initiate the assemble of values using the LocalContribution concept. | |
| void | endAssemble () |
| Finalize the assemble of values using the LocalContribution concept. | |
| void | getLocalDofReferences (const EntityType &entity, LocalDofVectorType &localDofs) |
| get local Dofs and store a reference to it in the LocalDofVector | |
| DefaultLoadBalanceContainsCheckType | defaultLoadBalanceContainsCheck () const |
| void | operator() (const DomainType &arg, RangeType &dest) const |
| Application operator that applies all operators in the linear combination stack. | |
Static Public Attributes | |
| static constexpr std::size_t | blockSize |
| size of the dof blocks | |
Protected Types | |
| typedef ParallelScalarProduct< DiscreteFunctionInterfaceType > | ScalarProductType |
| typedef TemporaryLocalFunction< DiscreteFunctionSpaceType > | TemporaryLocalFunctionType |
Protected Member Functions | |
| DofVectorType & | allocateDofStorageWrapper (const size_t size, const DofType *v) |
| DofVectorType & | allocateDofStorage (const DiscreteFunctionSpaceType &space) |
| virtual void | backup () const |
| virtual void | restore () |
| virtual void | insertSubData () |
| virtual void | removeSubData () |
| void | evaluateGlobal (const DomainType &x, Functor functor) const |
| evaluate functor in global coordinate | |
| const Implementation & | asImp () const |
| Implementation & | asImp () |
| virtual void * | pointer () |
Static Protected Member Functions | |
| static const Implementation & | asImp (const ThisType &other) |
| static Implementation & | asImp (ThisType &other) |
Protected Attributes | |
| std::unique_ptr< DofStorageInterface > | memObject_ |
| DofVectorType & | dofVector_ |
| std::shared_ptr< const DiscreteFunctionSpaceType > | dfSpace_ |
| Traits::LocalDofVectorStackType | ldvStack_ |
| LocalDofVectorAllocatorType | ldvAllocator_ |
| TemporaryLocalFunctionType | localFunction_ |
| std::string | name_ |
| ScalarProductType | scalarProduct_ |
| std::type_index | assembleOperation_ |
| std::size_t | assembleCount_ |
Related Functions | |
(Note that these are not member functions.) | |
| template<class Impl > | |
| std::ostream & | operator<< (std::ostream &out, const DiscreteFunctionInterface< Impl > &df) |
| write a discrete function into an STL stream | |
| template<class DFieldType , class RFieldType , class DType , class RType > | |
| static Mapping< DFieldType, RFieldType, DType, RType > | operator+ (const Mapping< DFieldType, RFieldType, DType, RType > &a, const Mapping< DFieldType, RFieldType, DType, RType > &b) |
| add two mappings | |
| template<class DFieldType , class RFieldType , class DType , class RType > | |
| static Mapping< DFieldType, RFieldType, DType, RType > | operator- (const Mapping< DFieldType, RFieldType, DType, RType > &a, const Mapping< DFieldType, RFieldType, DType, RType > &b) |
| substract two mappings | |
| template<class DFieldType , class RFieldType , class DType , class RType > | |
| static Mapping< DFieldType, RFieldType, DType, RType > | operator* (const Mapping< DFieldType, RFieldType, DType, RType > &mapping, const RFieldType &factor) |
| scale mapping with factor | |
| template<class DFieldType , class RFieldType , class DType , class RType > | |
| static Mapping< DFieldType, RFieldType, DType, RType > | operator* (const RFieldType &factor, const Mapping< DFieldType, RFieldType, DType, RType > &mapping) |
| scale mapping with factor | |
| template<class DFieldType , class RFieldType , class DType , class RType > | |
| static Mapping< DFieldType, RFieldType, DType, RType > | operator/ (const Mapping< DFieldType, RFieldType, DType, RType > &mapping, const RFieldType &factor) |
| operator / for mappings | |
| template<class DFieldType , class RFieldType , class DType , class RType > | |
| static Mapping< DFieldType, RFieldType, DType, RType > | operator/ (const RFieldType &factor, const Mapping< DFieldType, RFieldType, DType, RType > &mapping) |
| operator / for mappings | |
An adaptive discrete function This class is comparable to DFAdapt, except that it provides a specialisation for CombinedSpace objects which provides enriched functionality (access to subfunctions) and runtime optimisations
|
inherited |
|
inherited |
|
inherited |
|
inherited |
type of the const dof iterator
|
inherited |
|
inherited |
| typedef BaseType::DiscreteFunctionSpaceType Dune::Fem::AdaptiveDiscreteFunction< DiscreteFunctionSpace >::DiscreteFunctionSpaceType |
|
inherited |
type of the discrete function (Barton-Nackman parameter)
|
inherited |
|
inherited |
|
inherited |
type of the dof iterator
| typedef BaseType::DofType Dune::Fem::AdaptiveDiscreteFunction< DiscreteFunctionSpace >::DofType |
| typedef BaseType::DofVectorType Dune::Fem::AdaptiveDiscreteFunction< DiscreteFunctionSpace >::DofVectorType |
|
inherited |
type of domain field (usually a float type)
|
inherited |
type of domain vector
|
inherited |
|
inherited |
type of associated function space
|
inherited |
type of the underlying grid part
|
inherited |
type of the underlying grid
|
inherited |
|
inherited |
type of hessian
|
inherited |
type of jacobian
|
inherited |
|
inherited |
type of LocalDofVector
|
inherited |
type of LocalDofVector
|
inherited |
type of local functions
|
inherited |
type of mapping base class for this discrete function
| typedef MutableBlockVector< DynamicArray< DofType >, DiscreteFunctionSpaceType::localBlockSize > Dune::Fem::AdaptiveDiscreteFunction< DiscreteFunctionSpace >::MutableDofVectorType |
|
inherited |
type of range field (usually a float type)
|
inherited |
type of range vector
|
protectedinherited |
|
inherited |
size type of the block vector
|
protectedinherited |
|
inherited |
|
inline |
Constructor to use if the vector storing the dofs does not exist yet.
| [in] | name | name of the discrete function |
| [in] | space | space the discrete function lives in |
|
inline |
Constructor to use if the vector storing the dofs already exists.
| [in] | name | name of the discrete function |
| [in] | space | space the discrete function lives in |
| [in] | data | pointer to data |
|
inline |
Constructor to use if the vector storing the dofs already exists.
| [in] | name | name of the discrete function |
| [in] | space | space the discrete function lives in |
| [in] | dofVector | reference to the dof vector |
|
inline |
Copy constructor.
|
inline |
Move constructor.
|
delete |
|
inlineinherited |
add local Dofs to dof vector associated with the entity
| [in] | entity | Entity to focus view of discrete function |
| [in] | localDofs | the local dofs vector to be added |
|
inlineinherited |
add scaled local Dofs to dof vector associated with the entity
| [in] | entity | Entity to focus view of discrete function |
| [in] | s | scaling factor |
| [in] | localDofs | the local dofs vector to be added |
|
inlineprotected |
|
inlineprotected |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
|
inline |
|
inline |
|
inlineinherited |
|
inlineinherited |
axpy operation
Adds s * g to this discrete function.
| [in] | s | scalar value to scale g with |
| [in] | g | discrete function to add |
|
inlineinherited |
|
inlineprotectedvirtualinherited |
Implements Dune::Fem::PersistentObject.
|
inlineinherited |
Initiate the assemble of values using the LocalContribution concept.
| AssembleOperation | the specific operation (Add, Set, ...) |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
obtain total number of blocks, i.e. size / blockSize.
The number of blocks of DoFs (degrees of freedom) can also be seen as the size of the discrete function divided by the blockSize.
|
inlineinherited |
set all degrees of freedom to zero
|
inlineinherited |
do default communication of space for this discrete function
|
inlineinherited |
|
inlineinherited |
returns true if the space contains only globally continuous functions
For example, a Lagrange space returns true while a discontiuous Galerkin space returns false.
|
inherited |
return reference to data handle object
|
inlineinherited |
|
inlineinherited |
Obtain the non-constant iterator pointing to the first dof.
|
inlineinherited |
Obtain the constant iterator pointing to the first dof.
|
inlineinherited |
|
inlineinherited |
Obtain the non-constant iterator pointing to the last dof.
|
inlineinherited |
Obtain the constant iterator pointing to the last dof.
|
inlineinherited |
check for NaNs
|
inline |
|
inline |
|
inline |
Enable this discrete function for dof compression, i.e. during grid changes a dof compression is done when the DofManagers compress is called.
|
inlineinherited |
Finalize the assemble of values using the LocalContribution concept.
| AssembleOperation | the specific operation (Add, Set, ...) |
|
inlineinherited |
|
inlineprotectedinherited |
evaluate functor in global coordinate
|
inlineinherited |
get local Dofs and store a reference to it in the LocalDofVector
|
inlineinherited |
fill local Dofs to dof vector associated with the entity
| [in] | entity | Entity to focus view of discrete function |
| [out] | localDofs | the local dofs vector to be set |
|
inlineinherited |
obtain a reference to the underlying grid part
|
inlineinherited |
evaluate the hessian of the function (const DomainType &x,HessianRangeType &hessian) const
| [in] | x | evaluation point |
| [out] | hessian | value of the hessian in x (const DomainType &x,HessianRangeType &hessian) const |
|
protectedvirtualinherited |
Reimplemented from Dune::Fem::PersistentObject.
|
inlineinherited |
|
inline |
|
inline |
|
inlineinherited |
obtain the local function storage
|
inlineinherited |
obtain an uninitialized local function (read-write)
|
inlineinherited |
obtain an uninitialized local function (read-write)
|
inlineinherited |
|
inlineinherited |
|
inline |
obtain the name of the discrete function
|
inline |
obtain the name of the discrete function
|
inlineinherited |
Squared small l^2 norm of all dofs.
|
inlineinherited |
Application operator that applies all operators in the linear combination stack.
| [in] | arg | argument |
| [out] | dest | destination |
|
inlineinherited |
multiply all DoFs with a scalar factor
| [in] | scalar | factor to multiply DoFs with |
|
inlineinherited |
add another discrete function to this one
| [in] | g | discrete function to add |
|
inlineinherited |
add another discrete function to this one
| [in] | g | discrete function to add |
|
inlineinherited |
substract all degrees of freedom from given discrete function using the dof iterators
| [in] | g | discrete function which is substracted from this discrete function |
|
inlineinherited |
substract all degrees of freedom from given discrete function using the dof iterators
| [in] | g | discrete function which is substracted from this discrete function |
|
inlineinherited |
devide all DoFs by a scalar factor
| [in] | scalar | factor with which all dofs are devided |
|
delete |
|
delete |
|
inlineconstexprinherited |
obtain an upper bound on the polynomial order of the underlying space.
|
inlineprotectedvirtualinherited |
Reimplemented in Dune::Fem::PersistenceManager::WrapObject< ObjectType, false >.
|
inlineinherited |
print all DoFs to a stream (for debugging purposes)
| [in] | out | stream to print to |
|
inlineinherited |
read the discrete function from a stream
| [in] | in | stream to read the discrete function from |
|
protectedvirtualinherited |
Reimplemented from Dune::Fem::PersistentObject.
|
inlineprotectedvirtualinherited |
Implements Dune::Fem::PersistentObject.
|
inlineinherited |
Scalar product between the DoFs of two discrete functions.
| [in] | other | discrete function to evaluate the scalar product with |
|
inlineinherited |
set local Dofs to dof vector associated with the entity
| [in] | entity | Entity to focus view of discrete function |
| [in] | localDofs | the local dofs vector to be set |
|
inlineinherited |
Return the number of blocks in the block vector.
|
inlineinherited |
obtain a reference to the corresponding DiscreteFunctionSpace
|
inlineinherited |
write the discrete function into a stream
| [in] | out | stream to write the discrete function to |
|
related |
scale mapping with factor
| [in] | mapping | Mapping which is scaled |
| [in] | factor | factor with which mapping is scaled |
|
related |
scale mapping with factor
| [in] | factor | factor with which mapping is scaled |
| [in] | mapping | Mapping which is scaled |
|
related |
add two mappings
| [in] | a | mapping 1 |
| [in] | b | mapping 2 |
|
related |
substract two mappings
| [in] | a | mapping 1 |
| [in] | b | mapping 2 |
|
related |
operator / for mappings
| [in] | mapping | mapping which is divided |
| [in] | factor | f factor by which result of mapping is divided |
|
related |
operator / for mappings
| [in] | factor | by which result of mapping is divided |
| [in] | mapping | which is divided |
|
related |
write a discrete function into an STL stream
| [in] | out | STL stream to write to |
| [in] | df | discrete function to write |
|
protectedinherited |
|
protectedinherited |
|
staticconstexprinherited |
size of the dof blocks
|
protectedinherited |
|
protected |
|
mutableprotectedinherited |
|
protectedinherited |
|
mutableprotectedinherited |
|
protected |
|
protectedinherited |
|
protectedinherited |