ug4
ug::VarianceMarkingEta< TDomain > Class Template Reference

Marks elements above a certain threshold for refinement. More...

#include <error_elem_marking_strategy.h>

+ Inheritance diagram for ug::VarianceMarkingEta< TDomain >:

Public Types

typedef IElementMarkingStrategy< TDomain > base_type
 
- Public Types inherited from ug::IElementMarkingStrategy< TDomain >
typedef Grid::AttachmentAccessor< elem_type, ug::Attachment< number > > elem_accessor_type
 
typedef domain_traits< dim >::element_type elem_type
 element type to be marked More...
 

Public Member Functions

void init_coarsening (number theta, int min_level)
 
void init_refinement (number theta, int max_level)
 
 VarianceMarkingEta (number theta)
 
 VarianceMarkingEta (number theta, number width)
 
 VarianceMarkingEta (number theta, number width, number theta_coarse)
 
- Public Member Functions inherited from ug::IElementMarkingStrategy< TDomain >
number global_estimated_error () const
 
number global_estimated_error_per_elem_max () const
 
number global_estimated_error_per_elem_min () const
 
 IElementMarkingStrategy ()
 
void mark (IMultigridElementIndicators< TDomain > &mgElemIndicators, IRefiner &refiner, ConstSmartPtr< DoFDistribution > dd)
 This function marks all elements. More...
 
virtual ~IElementMarkingStrategy ()
 

Protected Member Functions

void mark (typename base_type::elem_accessor_type &aaError2, IRefiner &refiner, ConstSmartPtr< DoFDistribution > dd)
 DEPRECATED: More...
 

Protected Attributes

int m_max_level
 
int m_min_level
 
number m_theta
 
number m_theta_coarse
 
number m_width
 
- Protected Attributes inherited from ug::IElementMarkingStrategy< TDomain >
number m_latest_error
 
number m_latest_error_per_elem_max
 
number m_latest_error_per_elem_min
 

Additional Inherited Members

- Static Public Attributes inherited from ug::IElementMarkingStrategy< TDomain >
static const int dim = TDomain::dim
 world dimension More...
 

Detailed Description

template<typename TDomain>
class ug::VarianceMarkingEta< TDomain >

Marks elements above a certain threshold for refinement.

Threshold given by \( \theta * (\mu + width * \sigma) \) where \( \mu = E[\eta], \sigma^2 = Var[\eta] \)*

Member Typedef Documentation

◆ base_type

template<typename TDomain >
typedef IElementMarkingStrategy<TDomain> ug::VarianceMarkingEta< TDomain >::base_type

Constructor & Destructor Documentation

◆ VarianceMarkingEta() [1/3]

template<typename TDomain >
ug::VarianceMarkingEta< TDomain >::VarianceMarkingEta ( number  theta)
inline

◆ VarianceMarkingEta() [2/3]

template<typename TDomain >
ug::VarianceMarkingEta< TDomain >::VarianceMarkingEta ( number  theta,
number  width 
)
inline

◆ VarianceMarkingEta() [3/3]

template<typename TDomain >
ug::VarianceMarkingEta< TDomain >::VarianceMarkingEta ( number  theta,
number  width,
number  theta_coarse 
)
inline

Member Function Documentation

◆ init_coarsening()

template<typename TDomain >
void ug::VarianceMarkingEta< TDomain >::init_coarsening ( number  theta,
int  min_level 
)
inline

◆ init_refinement()

template<typename TDomain >
void ug::VarianceMarkingEta< TDomain >::init_refinement ( number  theta,
int  max_level 
)
inline

◆ mark()

template<typename TDomain >
void ug::VarianceMarkingEta< TDomain >::mark ( typename base_type::elem_accessor_type aaError,
IRefiner refiner,
ConstSmartPtr< DoFDistribution dd 
)
protectedvirtual

Member Data Documentation

◆ m_max_level

template<typename TDomain >
int ug::VarianceMarkingEta< TDomain >::m_max_level
protected

◆ m_min_level

template<typename TDomain >
int ug::VarianceMarkingEta< TDomain >::m_min_level
protected

◆ m_theta

template<typename TDomain >
number ug::VarianceMarkingEta< TDomain >::m_theta
protected

◆ m_theta_coarse

template<typename TDomain >
number ug::VarianceMarkingEta< TDomain >::m_theta_coarse
protected

◆ m_width

template<typename TDomain >
number ug::VarianceMarkingEta< TDomain >::m_width
protected

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