OGS
|
Definition at line 76 of file ExtrapolatableElementCollection.h.
#include <ExtrapolatableElementCollection.h>
Public Types | |
using | LocalAssembler |
LocalAssemblerCollection contains many LocalAssembler's. | |
using | IntegrationPointValuesMethod |
Public Member Functions | |
ExtrapolatableLocalAssemblerCollection (LocalAssemblerCollection const &local_assemblers, IntegrationPointValuesMethod const &integration_point_values_method) | |
Eigen::Map< const Eigen::RowVectorXd > | getShapeMatrix (std::size_t const id, unsigned const integration_point) const override |
std::vector< double > const & | getIntegrationPointValues (std::size_t const id, const double t, std::vector< GlobalVector * > const &x, std::vector< NumLib::LocalToGlobalIndexMap const * > const &dof_table, std::vector< double > &cache) const override |
std::size_t | size () const override |
Returns the number of elements whose properties shall be extrapolated. | |
Public Member Functions inherited from NumLib::ExtrapolatableElementCollection | |
virtual | ~ExtrapolatableElementCollection ()=default |
Private Attributes | |
LocalAssemblerCollection const & | _local_assemblers |
IntegrationPointValuesMethod const | _integration_point_values_method |
using NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::IntegrationPointValuesMethod |
A method providing integration point values of some property.
The method must return reference to a vector containing the integration point values.
For further information about the cache
parameter see ExtrapolatableElementCollection::getIntegrationPointValues().
Definition at line 97 of file ExtrapolatableElementCollection.h.
using NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::LocalAssembler |
LocalAssemblerCollection contains many LocalAssembler's.
Definition at line 81 of file ExtrapolatableElementCollection.h.
|
inline |
Constructs a new instance.
local_assemblers | a collection of local assemblers whose integration point values shall be extrapolated. |
integration_point_values_method | a LocalAssembler method returning integration point values of some property for that local assembler. |
Definition at line 111 of file ExtrapolatableElementCollection.h.
|
inlineoverridevirtual |
Returns integration point values of some property of a specific element.
id | ID of the element of which the property is queried. |
t | The time used in the evaluation if time dependent quantities. |
x | The current solutions of a ProcessLib::Process; more generally any nodal GlobalVector pointers for each process. |
dof_table | The processes d.o.f. table used to get each element's local d.o.f. from x . |
cache | Can be used to compute a property on-the-fly. |
Since this method returns a reference, integration point values can not be computed locally and just returned.
Instead, the vector cache
can be used to store some derived quantities that should be used as integration point values. They can be written to the cache
and a reference to the cache
can then be returned by the implementation of this method. Ordinary integration point values can be returned directly (if they are stored in the local assembler), and the cache
can be left untouched.
For usage examples see the processes already implemented or the unit test in TestExtrapolation.cpp
Implements NumLib::ExtrapolatableElementCollection.
Definition at line 126 of file ExtrapolatableElementCollection.h.
References NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::_integration_point_values_method, and NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::_local_assemblers.
|
inlineoverridevirtual |
Returns the shape matrix of the element with the given id
at the given integration_point
.
Implements NumLib::ExtrapolatableElementCollection.
Definition at line 119 of file ExtrapolatableElementCollection.h.
References NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::_local_assemblers, and NumLib::ExtrapolatableElement::getShapeMatrix().
|
inlineoverridevirtual |
Returns the number of elements whose properties shall be extrapolated.
Implements NumLib::ExtrapolatableElementCollection.
Definition at line 137 of file ExtrapolatableElementCollection.h.
References NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::_local_assemblers.
|
private |
Definition at line 141 of file ExtrapolatableElementCollection.h.
Referenced by NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::getIntegrationPointValues().
|
private |
Definition at line 140 of file ExtrapolatableElementCollection.h.
Referenced by NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::getIntegrationPointValues(), NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::getShapeMatrix(), and NumLib::ExtrapolatableLocalAssemblerCollection< LocalAssemblerCollection >::size().