ug4
|
represents numerical solutions on a grid using an algebraic vector More...
#include <grid_function.h>
Classes | |
struct | dim_traits |
struct | traits |
iterator traits More... | |
Public Types | |
typedef TAlgebra | algebra_type |
Algebra type. | |
typedef ApproximationSpace< TDomain > | approximation_space_type |
Type of Approximation space. | |
typedef dim_traits< dim >::const_iterator | const_element_iterator |
typedef dim_traits< dim-1 >::const_iterator | const_side_iterator |
typedef TDomain | domain_type |
Domain. | |
typedef dim_traits< dim >::iterator | element_iterator |
typedef dim_traits< dim >::grid_base_object | element_type |
typedef dim_traits< dim-1 >::iterator | side_iterator |
typedef dim_traits< dim-1 >::grid_base_object | side_type |
typedef GridFunction< TDomain, TAlgebra > | this_type |
This type. | |
typedef algebra_type::vector_type | vector_type |
Vector type used to store dof values. | |
Public Member Functions | |
template<typename TElem > | |
size_t | algebra_indices (TElem *elem, std::vector< size_t > &ind, bool bClear=true) const |
get algebra indices on an geometric object in canonical order | |
SmartPtr< ApproximationSpace< TDomain > > | approx_space () |
returns approx space | |
ConstSmartPtr< ApproximationSpace< TDomain > > | approx_space () const |
returns const domain | |
void | assign (const this_type &v) |
assigns another GridFunction | |
void | assign (const vector_type &v) |
assigns the values of a vector | |
SmartPtr< this_type > | clone () const |
clone including values | |
virtual void | clone_pattern (const this_type &v) |
copies the GridFunction v, except that the values are copied. | |
SmartPtr< this_type > | clone_without_values () const |
clone excluding values | |
template<typename TElem , typename TBaseElem > | |
void | collect_associated (std::vector< TBaseElem * > &vAssElem, TElem *elem, bool clearContainer=true) const |
returns the adjacend elements | |
virtual void | copy_values (const std::vector< std::pair< size_t, size_t > > &vIndexMap, bool bDisjunct=false) |
copy values | |
template<typename TElem > | |
size_t | dof_indices (TElem *elem, size_t fct, std::vector< DoFIndex > &ind, bool bHang=false, bool bClear=true) const |
get multi indices on an finite element in canonical order | |
SmartPtr< TDomain > | domain () |
returns domain | |
ConstSmartPtr< TDomain > | domain () const |
returns const domain | |
void | enable_redistribution (bool enable) |
enables or disables redistribution for this grid function | |
const GridLevel & | grid_level () const |
returns the grid level | |
GridFunction (const this_type &v) | |
Copy constructor. | |
GridFunction (SmartPtr< ApproximationSpace< TDomain > > spApproxSpace, bool bManage=true) | |
Initializing Constructor using surface dof distribution. | |
GridFunction (SmartPtr< ApproximationSpace< TDomain > > spApproxSpace, const GridLevel &gl, bool bManage=true) | |
Initializing Constructor using a grid level. | |
GridFunction (SmartPtr< ApproximationSpace< TDomain > > spApproxSpace, int level, bool bManage=true) | |
Initializing Constructor using surface dof distribution on a level. | |
GridFunction (SmartPtr< ApproximationSpace< TDomain > > spApproxSpace, SmartPtr< DoFDistribution > spDoFDistr, bool bManage=true) | |
Initializing Constructor. | |
template<typename TElem > | |
void | indices (TElem *elem, LocalIndices &ind, bool bHang=false) const |
get all indices of the element | |
template<typename TElem > | |
size_t | inner_algebra_indices (TElem *elem, std::vector< size_t > &ind, bool bClear=true) const |
get algebra indices on an geometric object in canonical order | |
template<typename TElem > | |
size_t | inner_dof_indices (TElem *elem, size_t fct, std::vector< DoFIndex > &ind, bool bClear=true) const |
get multi indices on an geometric object in canonical order | |
template<class TGeomObj > | |
bool | is_contained (TGeomObj *obj) const |
returns if the grid object is part of this grid function | |
bool | managed () const |
return m_bManaged | |
size_t | num_indices () const |
return the number of indices distributed (proc local) | |
size_t | num_indices (int si) const |
return the number of indices distributed on subset si (proc local) | |
this_type & | operator= (const this_type &v) |
assigns another grid function | |
this_type & | operator= (number d) |
assigns constant value | |
virtual void | permute_values (const std::vector< size_t > &vIndNew) |
permutes all values | |
bool | redistribution_enabled () const |
retruns true if the grid-function is redistributed together with the grid in parallel applications | |
virtual void | resize_values (size_t s, number defaultValue=0.0) |
resize | |
void | SetConsistentStorageType () |
virtual | ~GridFunction () |
Destructor. | |
SmartPtr< DoFDistribution > | dof_distribution () |
SmartPtr< DoFDistribution > | dd () |
ConstSmartPtr< DoFDistribution > | dof_distribution () const |
ConstSmartPtr< DoFDistribution > | dd () const |
template<typename TElem > | |
traits< TElem >::const_iterator | begin () const |
template<typename TElem > | |
traits< TElem >::const_iterator | begin (SurfaceView::SurfaceConstants validStates) const |
template<typename TElem > | |
traits< TElem >::const_iterator | end () const |
template<typename TElem > | |
traits< TElem >::const_iterator | end (SurfaceView::SurfaceConstants validStates) const |
template<typename TElem > | |
traits< TElem >::const_iterator | begin (int si) const |
template<typename TElem > | |
traits< TElem >::const_iterator | begin (int si, SurfaceView::SurfaceConstants validStates) const |
template<typename TElem > | |
traits< TElem >::const_iterator | end (int si) const |
template<typename TElem > | |
traits< TElem >::const_iterator | end (int si, SurfaceView::SurfaceConstants validStates) const |
size_t | num_dofs () const |
size_t | num_dofs (int fct) const |
size_t | num_dofs (int fct, int si) const |
![]() | |
virtual | ~IGridFunction () |
![]() | |
SubsetGroup | all_subsets_grp_except_for (const char *names) const |
returns subset group of all the subsets except for (by name) | |
int | dim (size_t fct) const |
returns the dimension in which solution lives | |
int | dim_subset (int si) const |
returns dimension of subset | |
ConstSmartPtr< DoFDistributionInfo > | dof_distribution_info () const |
returns underlying info | |
DoFDistributionInfoProvider () | |
constructor | |
DoFDistributionInfoProvider (ConstSmartPtr< DoFDistributionInfo > spDDI) | |
constructor | |
FunctionGroup | fct_grp_by_name (const char *names) const |
returns a function group to a string of functions | |
size_t | fct_id_by_name (const char *name) const |
returns fct id by name | |
ConstSmartPtr< FunctionPattern > | function_pattern () const |
returns the function pattern | |
bool | is_def_everywhere (size_t fct) const |
returns true if the discrete function nr_fct is defined everywhere | |
bool | is_def_in_subset (size_t fct, int si) const |
returns if a function is defined on a subset | |
size_t | max_dofs (const GridBaseObjectId gbo) const |
returns the maximum number of dofs on a grid base object type | |
size_t | max_dofs (const GridBaseObjectId gbo, const int si) const |
returns the maximum number of dofs on a grid base object on a subset | |
size_t | max_dofs (const int dim) const |
returns the maximum number of dofs on grid objects in a dimension | |
size_t | max_dofs (const int dim, const int si) const |
returns the maximum number of dofs in a dimension on a subset | |
size_t | max_dofs (const ReferenceObjectID roid) const |
returns the maximum number of dofs on reference object type | |
size_t | max_fct_dofs (const size_t fct, const GridBaseObjectId gbo) const |
returns the maximal number of dofs on a base object type for a function component | |
size_t | max_fct_dofs (const size_t fct, const GridBaseObjectId gbo, const int si) const |
returns the maximum number of dofs on a grid base object on a subset for a function component | |
size_t | max_fct_dofs (const size_t fct, const int dim, const int si) const |
returns the maximum number of dofs in a dimension on a subset for a function component | |
size_t | max_fct_dofs (const size_t fct, const ReferenceObjectID roid) const |
returns the number of dofs on a reference object for a function component | |
size_t | max_fct_dofs (const size_t fct, int dim) const |
returns the maximal number of dofs on a dimension for a function component | |
std::string | name (size_t fct) const |
returns the name of the discrete function nr_fct | |
std::vector< std::string > | names () const |
returns the names of the discrete functions | |
size_t | num_dofs (const ReferenceObjectID roid, const int si) const |
returns the number of dofs on a Reference Object on a subset | |
size_t | num_fct () const |
number of discrete functions on subset si | |
size_t | num_fct (int si) const |
number of discrete functions on subset si | |
size_t | num_fct_dofs (const size_t fct, const ReferenceObjectID roid, const int si) const |
returns the number of dofs on a Reference Object on a subset for a function component | |
int | num_subsets () const |
returns number of subsets | |
size_t | offset (const ReferenceObjectID roid, const int si, const size_t fct) const |
returns the offset for reference element, subset and function | |
void | print_local_dof_statistic () const |
prints statistic on local dof distribution | |
void | print_local_dof_statistic (int verboseLev) const |
prints informations | |
void | set_dof_distribution_info (ConstSmartPtr< DoFDistributionInfo > spDDI) |
sets the dd info | |
SubsetGroup | subset_grp_by_name (const char *names) const |
returns subset group by name | |
ConstSmartPtr< ISubsetHandler > | subset_handler () const |
returns the subset handler | |
int | subset_id_by_name (const char *name) const |
returns the subset id | |
std::string | subset_name (int si) const |
returns subset name | |
const LFEID & | local_finite_element_id (size_t fct) const |
const LFEID & | lfeid (size_t fct) const |
Static Public Attributes | |
static const int | dim = domain_type::dim |
World Dimension. | |
Protected Member Functions | |
void | check_algebra () |
checks the algebra | |
void | grid_changed_callback (const GridMessage_Adaption &msg) |
void | grid_distribution_callback (const GridMessage_Distribution &msg) |
called during parallel redistribution | |
void | init (SmartPtr< ApproximationSpace< TDomain > > spApproxSpace, SmartPtr< DoFDistribution > spDoFDistr, bool bManage) |
inits the grid function | |
void | register_at_adaption_msg_hub () |
registers at message hub for grid adaption | |
virtual this_type * | virtual_clone () const |
virtual clone using covariant return type | |
virtual this_type * | virtual_clone_without_values () const |
virtual clone using covariant return type excluding values | |
Protected Attributes | |
bool | m_bManaged |
boolean for DoF Distribution management of grid function | |
bool | m_bRedistribute |
specifies whether the gridfunction should be redistributed together with the grid. | |
uint | m_preDistStorageType |
stores the storage-type from before redistribution | |
SmartPtr< AdaptionSurfaceGridFunction< TDomain > > | m_spAdaptGridFct |
adaption grid function for temporary storage of values in grid | |
SmartPtr< ApproximationSpace< TDomain > > | m_spApproxSpace |
Approximation Space. | |
SmartPtr< DoFDistribution > | m_spDD |
DoF Distribution this GridFunction relies on. | |
MessageHub::SPCallbackId | m_spGridAdaptionCallbackID |
message hub id | |
MessageHub::SPCallbackId | m_spGridDistributionCallbackID |
![]() | |
ConstSmartPtr< DoFDistributionInfo > | m_spDDI |
Function Pattern. | |
represents numerical solutions on a grid using an algebraic vector
A grid function brings approximation space and algebra together. For a given DoF Distribution (e.g. a level dof distribution or a surface dof distribution) the grid function stores the values of the DoFs in an algebraic vector. In addition access to the grid elements is provided and the mapping between grid elements and DoFs is provided.
TDomain | domain type |
TAlgebra | algebra type |
typedef TAlgebra ug::GridFunction< TDomain, TAlgebra >::algebra_type |
Algebra type.
typedef ApproximationSpace<TDomain> ug::GridFunction< TDomain, TAlgebra >::approximation_space_type |
Type of Approximation space.
typedef dim_traits<dim>::const_iterator ug::GridFunction< TDomain, TAlgebra >::const_element_iterator |
typedef dim_traits<dim-1>::const_iterator ug::GridFunction< TDomain, TAlgebra >::const_side_iterator |
typedef TDomain ug::GridFunction< TDomain, TAlgebra >::domain_type |
typedef dim_traits<dim>::iterator ug::GridFunction< TDomain, TAlgebra >::element_iterator |
typedef dim_traits<dim>::grid_base_object ug::GridFunction< TDomain, TAlgebra >::element_type |
typedef dim_traits<dim-1>::iterator ug::GridFunction< TDomain, TAlgebra >::side_iterator |
typedef dim_traits<dim-1>::grid_base_object ug::GridFunction< TDomain, TAlgebra >::side_type |
typedef GridFunction<TDomain, TAlgebra> ug::GridFunction< TDomain, TAlgebra >::this_type |
This type.
typedef algebra_type::vector_type ug::GridFunction< TDomain, TAlgebra >::vector_type |
Vector type used to store dof values.
ug::GridFunction< TDomain, TAlgebra >::GridFunction | ( | SmartPtr< ApproximationSpace< TDomain > > | spApproxSpace, |
SmartPtr< DoFDistribution > | spDoFDistr, | ||
bool | bManage = true |
||
) |
Initializing Constructor.
References init().
ug::GridFunction< TDomain, TAlgebra >::GridFunction | ( | SmartPtr< ApproximationSpace< TDomain > > | spApproxSpace, |
bool | bManage = true |
||
) |
Initializing Constructor using surface dof distribution.
References init(), ug::GridLevel::SURFACE, and ug::GridLevel::TOP.
ug::GridFunction< TDomain, TAlgebra >::GridFunction | ( | SmartPtr< ApproximationSpace< TDomain > > | spApproxSpace, |
int | level, | ||
bool | bManage = true |
||
) |
Initializing Constructor using surface dof distribution on a level.
References init(), and ug::GridLevel::SURFACE.
ug::GridFunction< TDomain, TAlgebra >::GridFunction | ( | SmartPtr< ApproximationSpace< TDomain > > | spApproxSpace, |
const GridLevel & | gl, | ||
bool | bManage = true |
||
) |
Initializing Constructor using a grid level.
References init().
|
inline |
Copy constructor.
References ug::GridFunction< TDomain, TAlgebra >::assign().
|
inlinevirtual |
Destructor.
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
inline |
get algebra indices on an geometric object in canonical order
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
Referenced by ug::ElementGaussSeidelStep().
|
inline |
returns approx space
References ug::GridFunction< TDomain, TAlgebra >::m_spApproxSpace.
Referenced by ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::calc_error(), ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::calc_error(), ug::AdaptionSurfaceGridFunction< TDomain >::copy_from_surface(), ug::AdaptionSurfaceGridFunction< TDomain >::copy_to_surface(), ug::StdTransfer< TDomain, TAlgebra >::do_restrict(), ug::ElementGaussSeidelStep(), ug::ComponentGaussSeidel< TDomain, TAlgebra >::extract_blocks(), and ug::StdTransfer< TDomain, TAlgebra >::prolongate().
|
inline |
returns const domain
References ug::GridFunction< TDomain, TAlgebra >::m_spApproxSpace.
void ug::GridFunction< TDomain, TAlgebra >::assign | ( | const this_type & | v | ) |
assigns another GridFunction
Referenced by ug::GridFunction< TDomain, TAlgebra >::GridFunction(), and ug::GridFunction< TDomain, TAlgebra >::operator=().
void ug::GridFunction< TDomain, TAlgebra >::assign | ( | const vector_type & | v | ) |
assigns the values of a vector
|
inline |
iterator for elements where this grid function is defined
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
inline |
iterator for elements where this grid function is defined
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
inline |
iterator for elements where this grid function is defined
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
inline |
iterator for elements where this grid function is defined
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
protected |
checks the algebra
References UG_THROW, and ug::AlgebraType::VariableBlockSize.
|
inline |
clone including values
References ug::GridFunction< TDomain, TAlgebra >::virtual_clone().
|
virtual |
copies the GridFunction v, except that the values are copied.
|
inline |
clone excluding values
References ug::GridFunction< TDomain, TAlgebra >::virtual_clone_without_values().
Referenced by ug::ComponentGaussSeidel< TDomain, TAlgebra >::extract_blocks(), and ug::MGStats< TDomain, TAlgebra >::set_defect().
|
inline |
returns the adjacend elements
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
Referenced by ug::ElementGaussSeidelStep(), ug::VertexCenteredVankaSubspace< TDomain, TAlgebra >::init(), and ug::VertexBasedSubspace< TDomain, TAlgebra >::init().
|
virtual |
copy values
This method copies values between indices according to the passed mapping. The copy of the values is are performed as:
for all i: newIndex = vIndexMap[i].second oldIndex = vIndexMap[i].first value[newIndex] <- value[oldIndex]
If the copy operation is known to be a disjunct composition (i.e. each index appears only in one operation), this can be specified by a flag. In this case the order in which the copying is performed is arbitrary and this will save a copy operation of the whole vector.
[in] | vIndexMap | vector of index mappings (indexOld, indexNew) |
[in] | bDisjunct | flag, if permutation disjunct |
Implements ug::IGridFunction.
|
inline |
returns dof distribution
References ug::GridFunction< TDomain, TAlgebra >::dof_distribution().
Referenced by ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::calc_error(), ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::calc_error(), and ug::NestedIterationSolver< TDomain, TAlgebra >::estimate_and_mark_domain().
|
inline |
returns dof distribution
References ug::GridFunction< TDomain, TAlgebra >::dof_distribution().
|
inline |
returns dof distribution
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
Referenced by ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::adjust_solution(), ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::assemble_defect(), ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::assemble_jacobian(), ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::assemble_linear(), ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::assemble_rhs(), ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::assemble_rhs(), ug::AdaptionSurfaceGridFunction< TDomain >::copy_from_surface(), ug::GridFunction< TDomain, TAlgebra >::dd(), ug::GridFunction< TDomain, TAlgebra >::dd(), ug::AssembledMultiGridCycle< TDomain, TAlgebra >::init(), ug::AssembledTransformingSmoother< TDomain, TAlgebra >::init(), ug::IObstacleConstraint< TDomain, TAlgebra >::IObstacleConstraint(), ug::MarkForAdaption_AbsoluteGradientIndicator(), ug::MarkForAdaption_AbsoluteGradientJumpIndicator(), ug::MarkForAdaption_GradientIndicator(), ug::MarkForAdaption_GradientJumpIndicator(), ug::MarkForCoarsenening_SurfaceLayer(), ug::ActiveSet< TDomain, TAlgebra >::prepare(), ug::Prolongate(), ug::ProlongateElemwise(), ug::ProlongateP1(), ug::Restrict(), ug::RestrictElemwise(), and ug::RestrictP1().
|
inline |
returns dof distribution
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
inline |
get multi indices on an finite element in canonical order
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
Referenced by ug::ElementGaussSeidelStep().
|
inline |
returns domain
References ug::GridFunction< TDomain, TAlgebra >::m_spApproxSpace.
Referenced by ug::ActiveSet< TDomain, TAlgebra >::active_index_elem(), ug::DomainDiscretizationBase< TDomain, TAlgebra, TGlobAssembler >::calc_error(), ug::ActiveSet< TDomain, TAlgebra >::check_conv_elem(), ug::AdaptionSurfaceGridFunction< TDomain >::copy_to_surface(), ug::IObstacleConstraint< TDomain, TAlgebra >::IObstacleConstraint(), ug::MarkForAdaption_AbsoluteGradientIndicator(), ug::MarkForAdaption_AbsoluteGradientJumpIndicator(), ug::MarkForAdaption_GradientIndicator(), ug::MarkForAdaption_GradientJumpIndicator(), ug::MarkForAdaption_ResidualErrorP1Absolute(), ug::MarkForAdaption_ResidualErrorP1Relative(), ug::ActiveSet< TDomain, TAlgebra >::prepare(), ug::Prolongate(), ug::ProlongateElemwise(), ug::ProlongateP1(), ug::Restrict(), ug::RestrictElemwise(), and ug::RestrictP1().
|
inline |
returns const domain
References ug::GridFunction< TDomain, TAlgebra >::m_spApproxSpace.
|
inline |
enables or disables redistribution for this grid function
References ug::GridFunction< TDomain, TAlgebra >::m_bRedistribute.
|
inline |
iterator for elements where this grid function is defined
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
inline |
iterator for elements where this grid function is defined
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
inline |
iterator for elements where this grid function is defined
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
inline |
iterator for elements where this grid function is defined
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
protected |
this callback is called by the message hub, when a grid change has been performed. It will call all necessary actions in order to keep the grid correct for computations.
References ug::GridMessage_Adaption::adaption_begins(), ug::GridMessage_Adaption::adaption_ends(), ug::GridMessage_Adaption::coarsening(), pcl::InterfaceCommunicator< TLayout >::communicate(), ug::Grid::distributed_grid_manager(), ug::EDGE, pcl::InterfaceCommunicator< TLayout >::exchange_data(), ug::FACE, ug::DistributedGridManager::grid_layout_map(), ug::INT_V_MASTER, ug::INT_V_SLAVE, ug::GridMessage_Adaption::refinement(), ug::GridMessage_Adaption::step_begins(), ug::GridMessage_Adaption::step_ends(), ug::VERTEX, and ug::VOLUME.
|
protected |
called during parallel redistribution
References PROFILE_FUNC.
|
inline |
returns the grid level
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
Referenced by ug::NestedIterationSolver< TDomain, TAlgebra >::apply(), ug::StdTransfer< TDomain, TAlgebra >::do_restrict(), ug::UzawaBase< TDomain, TAlgebra >::extract_schur_update(), ug::UzawaBase< TDomain, TAlgebra >::init_in_first_step(), ug::UzawaBase< TDomain, TAlgebra >::my_write_debug(), ug::UzawaBase< TDomain, TAlgebra >::my_write_debug(), ug::StdTransfer< TDomain, TAlgebra >::prolongate(), ug::AssembledMultiGridCycle< TDomain, TAlgebra >::write_debug(), and ug::AssembledMultiGridCycle< TDomain, TAlgebra >::write_debug().
|
inline |
get all indices of the element
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
Referenced by ug::ActiveSet< TDomain, TAlgebra >::active_index_elem(), and ug::ActiveSet< TDomain, TAlgebra >::check_conv_elem().
|
protected |
inits the grid function
References ug::PST_UNDEFINED, SPNULL, and UG_THROW.
|
inline |
get algebra indices on an geometric object in canonical order
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
Referenced by ug::ProlongateP1(), and ug::RestrictP1().
|
inline |
get multi indices on an geometric object in canonical order
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
Referenced by ug::AdaptionSurfaceGridFunction< TDomain >::copy_from_surface(), and ug::AdaptionSurfaceGridFunction< TDomain >::copy_to_surface().
|
inline |
returns if the grid object is part of this grid function
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
inline |
return m_bManaged
References ug::GridFunction< TDomain, TAlgebra >::m_bManaged.
|
inline |
return the number of dofs distributed (global)
References ug::DoFCount::ALL_FCT, and ug::GridFunction< TDomain, TAlgebra >::num_dofs().
Referenced by ug::GridFunction< TDomain, TAlgebra >::num_dofs().
|
inline |
return the number of dofs distributed (global)
References ug::DoFCount::ALL_SUBSET, and ug::GridFunction< TDomain, TAlgebra >::num_dofs().
Referenced by ug::GridFunction< TDomain, TAlgebra >::num_dofs().
size_t ug::GridFunction< TDomain, TAlgebra >::num_dofs | ( | int | fct, |
int | si | ||
) | const |
return the number of dofs distributed (global)
References ug::DoFCount::num(), ug::DoFCount::sum_values_over_procs(), ug::DoFCount::UNIQUE_ES, and ug::DoFCount::UNIQUE_SS.
|
inline |
return the number of indices distributed (proc local)
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
Referenced by ug::ActiveSet< TDomain, TAlgebra >::active_index(), and ug::MGStats< TDomain, TAlgebra >::set_defect().
|
inline |
return the number of indices distributed on subset si (proc local)
References ug::GridFunction< TDomain, TAlgebra >::m_spDD.
|
inline |
assigns another grid function
References ug::GridFunction< TDomain, TAlgebra >::assign().
|
inline |
assigns constant value
|
virtual |
permutes all values
This method permutes the values according to the passed mapping vector, i.e. it performs a permutation of the whole index set. The vector vIndNew must have the size of the number of indices and for each index it must return the new index, i.e. newIndex = vIndNew[oldIndex].
[in] | vIndNew | mapping for each index |
Implements ug::IGridFunction.
References UG_THROW.
|
inline |
retruns true if the grid-function is redistributed together with the grid in parallel applications
References ug::GridFunction< TDomain, TAlgebra >::m_bRedistribute.
|
protected |
registers at message hub for grid adaption
References ug::MessageHub::register_class_callback().
|
virtual |
resize
This method resizes the length of the vector.
[in] | s | new size |
[in] | defaultValue | default value for new entries |
Implements ug::IGridFunction.
|
inline |
References ug::PST_CONSISTENT.
|
inlineprotectedvirtual |
virtual clone using covariant return type
Referenced by ug::GridFunction< TDomain, TAlgebra >::clone().
|
protectedvirtual |
virtual clone using covariant return type excluding values
References p.
Referenced by ug::GridFunction< TDomain, TAlgebra >::clone_without_values().
|
static |
World Dimension.
|
protected |
boolean for DoF Distribution management of grid function
Referenced by ug::GridFunction< TDomain, TAlgebra >::managed().
|
protected |
specifies whether the gridfunction should be redistributed together with the grid.
enabled by default
Referenced by ug::GridFunction< TDomain, TAlgebra >::enable_redistribution(), and ug::GridFunction< TDomain, TAlgebra >::redistribution_enabled().
|
protected |
stores the storage-type from before redistribution
|
protected |
adaption grid function for temporary storage of values in grid
|
protected |
|
protected |
DoF Distribution this GridFunction relies on.
Referenced by ug::GridFunction< TDomain, TAlgebra >::algebra_indices(), ug::GridFunction< TDomain, TAlgebra >::begin(), ug::GridFunction< TDomain, TAlgebra >::begin(), ug::GridFunction< TDomain, TAlgebra >::begin(), ug::GridFunction< TDomain, TAlgebra >::begin(), ug::GridFunction< TDomain, TAlgebra >::collect_associated(), ug::GridFunction< TDomain, TAlgebra >::dof_distribution(), ug::GridFunction< TDomain, TAlgebra >::dof_distribution(), ug::GridFunction< TDomain, TAlgebra >::dof_indices(), ug::GridFunction< TDomain, TAlgebra >::end(), ug::GridFunction< TDomain, TAlgebra >::end(), ug::GridFunction< TDomain, TAlgebra >::end(), ug::GridFunction< TDomain, TAlgebra >::end(), ug::GridFunction< TDomain, TAlgebra >::grid_level(), ug::GridFunction< TDomain, TAlgebra >::indices(), ug::GridFunction< TDomain, TAlgebra >::inner_algebra_indices(), ug::GridFunction< TDomain, TAlgebra >::inner_dof_indices(), ug::GridFunction< TDomain, TAlgebra >::is_contained(), ug::GridFunction< TDomain, TAlgebra >::num_indices(), ug::GridFunction< TDomain, TAlgebra >::num_indices(), and ug::GridFunction< TDomain, TAlgebra >::~GridFunction().
|
protected |
message hub id
|
protected |