SheafSystem
0.0.0.0
|
A policy that determines a zone should be refined if the error with respect to the source field at the zone center exceeds a given upper bound. More...
#include <zone_centered_error_bound_refinement_policy.h>
ZONE_CENTERED_ERROR_BOUND_REFINEMENT_POLICY FACET | |
sec_vd_value_type | _error_ub |
The upper bound on the error. More... | |
zone_centered_error_bound_refinement_policy (size_type xrefinement_depth_ub=2, sec_vd_value_type xerror_ub=0.01) | |
Creates an instance with refinement bound xrefinement_ub and error bound xerror_ub. More... | |
zone_centered_error_bound_refinement_policy (const zone_centered_error_bound_refinement_policy &xother) | |
Copy constructor. More... | |
virtual | ~zone_centered_error_bound_refinement_policy () |
Destructor. More... | |
sec_vd_value_type | error_ub () const |
The upper bound on the error at the center of a cell. More... | |
void | put_error_ub (sec_vd_value_type xub) |
Sets error_ub to xub. More... | |
FIELD_REFINEMENT_POLICY FACET | |
virtual bool | should_refine (field_refinement_buffer &xbuffer, size_type xrefinement_depth) const |
True if the zone specified by xzone_id should be refined. More... | |
virtual const std::string & | class_name () const |
The class name of this. More... | |
static const std::string & | static_class_name () |
The class name of this class. More... | |
ANY FACET | |
virtual bool | is_ancestor_of (const any *other) const |
Conformance test; true if other conforms to this. More... | |
virtual zone_centered_error_bound_refinement_policy * | clone () const |
Virtual constructor, makes a new instance of the same type as this. More... | |
virtual zone_centered_error_bound_refinement_policy & | operator= (const field_refinement_policy &xother) |
Assignment operator. More... | |
zone_centered_error_bound_refinement_policy & | operator= (const zone_centered_error_bound_refinement_policy &xother) |
Assignment operator. More... | |
virtual bool | invariant () const |
Class invariant. More... | |
Additional Inherited Members | |
Public Member Functions inherited from fields::field_refinement_policy | |
virtual | ~field_refinement_policy () |
Destructor. More... | |
size_type | refinement_depth_ub () const |
The upper bound on the refinement depth of a cell. A cell will not be refined if its refinement depth is equal to or greater than the upper bound. More... | |
void | put_refinement_depth_ub (size_type xub) |
Set the refinement depth upper bound to xub. More... | |
Public Member Functions inherited from sheaf::any | |
bool | is_same_type (const any *other) const |
True if other is the same type as this. More... | |
virtual | ~any () |
Destructor. More... | |
bool | invariant_check () const |
True if invariant checking is enabled. More... | |
void | enable_invariant_check () const |
Enable invariant checking. More... | |
void | disable_invariant_check () const |
Disable invariant check. Intended for preventing recursive calls to invariant and for suppressing invariant checking during multi-phase initialization. More... | |
int | disable_invariance_check_request_depth () const |
Number of times disable_invariant_check has been called without matching call to enable_invariant_check. More... | |
Static Public Member Functions inherited from fields::field_refinement_policy | |
static const std::string & | static_class_name () |
The class name of this class. More... | |
static field_refinement_policy * | new_policy (const std::string &xname) |
Creates an instance of the policy with class name xname. More... | |
static factory< field_refinement_policy > & | policy_factory () |
A factory for making policy objects. More... | |
Protected Member Functions inherited from fields::field_refinement_policy | |
field_refinement_policy (size_type xrefinement_depth_ub) | |
Creates an instance with reinement upper bound xrefinement_ub. More... | |
field_refinement_policy (const field_refinement_policy &xother) | |
Copy constructor. More... | |
Protected Member Functions inherited from sheaf::any | |
any () | |
default constructor More... | |
Protected Attributes inherited from fields::field_refinement_policy | |
size_type | _refinement_depth_ub |
The upper bound and the refinement level of a cell. More... | |
A policy that determines a zone should be refined if the error with respect to the source field at the zone center exceeds a given upper bound.
Definition at line 42 of file zone_centered_error_bound_refinement_policy.h.
fields::zone_centered_error_bound_refinement_policy::zone_centered_error_bound_refinement_policy | ( | size_type | xrefinement_depth_ub = 2 , |
sec_vd_value_type | xerror_ub = 0.01 |
||
) |
Creates an instance with refinement bound xrefinement_ub and error bound xerror_ub.
Definition at line 39 of file zone_centered_error_bound_refinement_policy.cc.
References error_ub(), invariant(), and fields::field_refinement_policy::refinement_depth_ub().
Referenced by clone(), and put_error_ub().
fields::zone_centered_error_bound_refinement_policy::zone_centered_error_bound_refinement_policy | ( | const zone_centered_error_bound_refinement_policy & | xother | ) |
Copy constructor.
Definition at line 62 of file zone_centered_error_bound_refinement_policy.cc.
References _error_ub, fields::field_refinement_policy::_refinement_depth_ub, invariant(), and ~zone_centered_error_bound_refinement_policy().
|
virtual |
Destructor.
Definition at line 85 of file zone_centered_error_bound_refinement_policy.cc.
References error_ub().
Referenced by zone_centered_error_bound_refinement_policy().
|
virtual |
The class name of this.
Reimplemented from fields::field_refinement_policy.
Definition at line 246 of file zone_centered_error_bound_refinement_policy.cc.
References static_class_name().
Referenced by should_refine().
|
virtual |
Virtual constructor, makes a new instance of the same type as this.
Implements fields::field_refinement_policy.
Definition at line 307 of file zone_centered_error_bound_refinement_policy.cc.
References sheaf::any::is_same_type(), operator=(), and zone_centered_error_bound_refinement_policy().
Referenced by is_ancestor_of().
fiber_bundle::sec_vd_value_type fields::zone_centered_error_bound_refinement_policy::error_ub | ( | ) | const |
The upper bound on the error at the center of a cell.
Definition at line 103 of file zone_centered_error_bound_refinement_policy.cc.
References _error_ub, and put_error_ub().
Referenced by put_error_ub(), zone_centered_error_bound_refinement_policy(), and ~zone_centered_error_bound_refinement_policy().
|
virtual |
Class invariant.
Reimplemented from fields::field_refinement_policy.
Definition at line 373 of file zone_centered_error_bound_refinement_policy.cc.
References sheaf::any::disable_invariant_check(), sheaf::any::enable_invariant_check(), sheaf::any::invariant(), and sheaf::any::invariant_check().
Referenced by operator=(), and zone_centered_error_bound_refinement_policy().
|
virtual |
Conformance test; true if other conforms to this.
Reimplemented from fields::field_refinement_policy.
Definition at line 287 of file zone_centered_error_bound_refinement_policy.cc.
References clone().
Referenced by operator=(), and static_class_name().
|
virtual |
Assignment operator.
Reimplemented from fields::field_refinement_policy.
Definition at line 330 of file zone_centered_error_bound_refinement_policy.cc.
References invariant(), and is_ancestor_of().
Referenced by clone().
fields::zone_centered_error_bound_refinement_policy & fields::zone_centered_error_bound_refinement_policy::operator= | ( | const zone_centered_error_bound_refinement_policy & | xother | ) |
Assignment operator.
Not Implemented.
Definition at line 352 of file zone_centered_error_bound_refinement_policy.cc.
References invariant().
void fields::zone_centered_error_bound_refinement_policy::put_error_ub | ( | sec_vd_value_type | xub | ) |
Sets error_ub to xub.
Definition at line 110 of file zone_centered_error_bound_refinement_policy.cc.
References _error_ub, error_ub(), fields::field_refinement_policy::policy_factory(), should_refine(), static_class_name(), and zone_centered_error_bound_refinement_policy().
Referenced by error_ub().
|
virtual |
True if the zone specified by xzone_id should be refined.
Implements fields::field_refinement_policy.
Definition at line 170 of file zone_centered_error_bound_refinement_policy.cc.
References _error_ub, fields::field_refinement_policy::_refinement_depth_ub, class_name(), fields::field_vd::dp(), fields::field_refinement_buffer::evaluate_at_center(), fields::field_refinement_buffer::prop_value, fields::field_refinement_policy::refinement_depth_ub(), fields::field_vd::same_evaluation(), fields::field_refinement_buffer::source, fields::field_refinement_buffer::source_prop_value, fields::field_vd::state_is_read_accessible(), fields::field_refinement_buffer::target, and fields::field_refinement_buffer::zone_id.
Referenced by put_error_ub().
|
static |
The class name of this class.
Definition at line 263 of file zone_centered_error_bound_refinement_policy.cc.
References is_ancestor_of().
Referenced by class_name(), and put_error_ub().
|
protected |
The upper bound on the error.
Definition at line 85 of file zone_centered_error_bound_refinement_policy.h.
Referenced by error_ub(), put_error_ub(), should_refine(), and zone_centered_error_bound_refinement_policy().