SheafSystem
0.0.0.0
|
An abstract section evaluator with a bounded domain that supports integration (volume calculation) as well as differntiation. More...
#include <integrable_section_evaluator.h>
INTEGRABLE_SECTION_EVALUATOR FACET | |
integrable_section_evaluator (const integrable_section_evaluator &xother) | |
Copy constructor. More... | |
virtual | ~integrable_section_evaluator () |
Destructor. More... | |
virtual value_type | volume (const dof_type xcoord_dofs[], size_type xcoord_dofs_ub, size_type xdf)=0 |
Volume for specified coordinate dofs xcoord_dofs and fiber space dimension xdf. More... | |
virtual void | integrate (const dof_type xcoord_dofs[], size_type xcoord_dofs_ub, size_type xdf, const dof_type xintegrands[], size_type xintegrands_ub, value_type xresult_integrals[], size_type xresult_integrals_ub)=0 |
Computes the value of the integral of the integrand array... More... | |
virtual void | integrate (const dof_type xcoord_dofs[], size_type xcoord_dofs_ub, size_type xdf, const dof_type xintegrand, value_type xresult_integrals[], size_type xresult_integrals_ub) |
Computes the value of the integral of the integrand... More... | |
virtual void | gauss_point (pod_index_type xindex, coord_type xresult[], size_type xresult_ub)=0 |
The local coordinates of the gauss point with index xindex. More... | |
integrable_section_evaluator () | |
Default constructor. More... | |
ANY FACET | |
virtual integrable_section_evaluator * | clone () const =0 |
Virtual constructor, makes a new instance of the same type as this. More... | |
virtual integrable_section_evaluator & | operator= (const integrable_section_evaluator &xother) |
Assignment operator. More... | |
virtual bool | invariant () const |
Class invariant. More... | |
virtual bool | is_ancestor_of (const any *other) const |
Conformance test; true if other conforms to this. More... | |
Additional Inherited Members | |
Public Types inherited from fiber_bundle::section_evaluator | |
typedef chart_point_coord_type | coord_type |
The type of local coordinate; the scalar type for the local coordinate vector space. More... | |
typedef vd_value_type | value_type |
The type of component in the value; the scalar type in the range vector space. More... | |
typedef sec_vd_dof_type | dof_type |
The type of degree of freedom. More... | |
Public Member Functions inherited from fiber_bundle::differentiable_section_evaluator | |
differentiable_section_evaluator (const differentiable_section_evaluator &xother) | |
Copy constructor. More... | |
virtual | ~differentiable_section_evaluator () |
Destructor. More... | |
virtual void | dxi_local (size_type xlocal_coord_index, const dof_type xsource_dofs[], size_type xsource_dofs_ub, dof_type xresult_dofs[], size_type xresult_dofs_ub) const =0 |
First partial derivative of this with respect to local coordinate xlocal_coord_index. More... | |
void | dxi_local (size_type xlocal_coord_index, const block< dof_type > &xsource_dofs, block< dof_type > &xresult_dofs) const |
First partial derivative of this with respect to local coordinate xlocal_coord_index. More... | |
virtual void | jacobian (const dof_type xcoord_dofs[], size_type xcoord_dofs_ub, size_type xdf, const dof_type xlocal_coords[], size_type xlocal_coords_ub) |
Computes the the jacobian matrix at local coordinates xlocal_coords with coordinate dofs xcoord_dofs. More... | |
const value_type * | jacobian_values () const |
The result of the preceding call to jacobian. More... | |
virtual value_type | jacobian_determinant (const dof_type xcoord_dofs[], size_type xcoord_dofs_ub, size_type xdf, const coord_type xlocal_coords[], size_type xlocal_coords_ub) |
Computes the the determinant of the jacobian matrix at local coordinates xlocal_coords with coordinate dofs xcoord_dofs. More... | |
virtual differentiable_section_evaluator & | operator= (const differentiable_section_evaluator &xother) |
Assignment operator. More... | |
Public Member Functions inherited from fiber_bundle::section_evaluator | |
section_evaluator (const section_evaluator &xother) | |
Copy constructor. More... | |
virtual | ~section_evaluator () |
Destructor. More... | |
virtual int | db () const =0 |
The base dimension; the dimension of the local coordinates (independent variable). More... | |
virtual void | local_coordinates (pod_index_type xindex, coord_type xresult[], size_type xresult_ub) const =0 |
The local coordinates of the dof with local index xindex. More... | |
void | local_coordinates (pod_index_type xindex, block< coord_type > &xresult) const |
The local coordinates of the dof with local index xindex. More... | |
virtual void | center (coord_type xresult[], size_type xresult_ub) const |
The local coordinates at the center of the evaluator. More... | |
void | center (block< coord_type > &xresult) const |
The local coordinates at the center of the evaluator. More... | |
virtual bool | in_standard_domain (const dof_type xlocal_coords[], size_type xlocal_coords_ub) const =0 |
True if the specified local coordinates are in the "standard" domain. More... | |
bool | in_standard_domain (const block< dof_type > &xlocal_coords) const |
True if the specified local coordinates are in the "standard" domain. More... | |
virtual size_type | dof_ct () const =0 |
The number of dofs required for each component of the dependent variable. More... | |
bool | df_is_variable () const |
True if and only if the fiber dimension (number of components of the dependent variable) is variable. More... | |
virtual int | df () const |
The fiber dimension (number of components of dependent variable). More... | |
virtual dof_type | value_at_coord (const dof_type xdofs[], size_type xdofs_ub, const dof_type xlocal_coords[], size_type xlocal_coords_ub) const |
Value at a specified local_coordinate. Single component version. More... | |
dof_type | value_at_coord (const block< dof_type > &xdofs, const block< dof_type > &xlocal_coords) const |
Value at a specified local_coordinate. Single component version. More... | |
virtual void | value_at_coord (const dof_type xdofs[], size_type xdofs_ub, const dof_type xlocal_coords[], size_type xlocal_coords_ub, dof_type xresult[], size_type xresult_ub) const =0 |
Values at a specified local_coordinate. Multiple component version. More... | |
void | value_at_coord (const block< dof_type > &xdofs, const block< dof_type > &xlocal_coords, block< dof_type > &xresult) const |
Values at a specified local_coordinate. Multiple component version. More... | |
virtual void | coord_at_value (const dof_type xdofs[], size_type xdofs_ub, const dof_type xvalue[], size_type xvalue_ub, dof_type xlocal_coords[], size_type xlocal_coords_ub) const =0 |
The local coordinates of a point at which the field has the value xvalue. The dofs are assumed to be interleaved. More... | |
void | coord_at_value (const block< dof_type > &xdofs, const block< dof_type > &xvalue, block< dof_type > &xlocal_coords) const |
The local coordinates of a point at which the field has the value xvalue. The dofs are assumed to be interleaved. More... | |
virtual dof_type | min (const dof_type xdofs[], size_type xdofs_ub) const |
The minimum value of the scalar or component section defined by xdofs. More... | |
dof_type | min (const block< dof_type > &xdofs) const |
The minimum value of the scalar or component section defined by xdofs. More... | |
virtual void | min (const dof_type xdofs[], size_type xdofs_ub, dof_type xresult[], size_type xresult_ub) const |
The minimum value of the vector section defined by xdofs. More... | |
void | min (const block< dof_type > &xdofs, block< dof_type > &xresult) const |
The minimum value of the vector section defined by xdofs. More... | |
virtual dof_type | max (const dof_type xdofs[], size_type xdofs_ub) const |
The maximum value of the scalar or component section defined by xdofs. More... | |
dof_type | max (const block< dof_type > &xdofs) const |
The maximum value of the scalar or component section defined by xdofs. More... | |
virtual void | max (const dof_type xdofs[], size_type xdofs_ub, dof_type xresult[], size_type xresult_ub) const |
The maximum value of the vector section defined by xdofs. More... | |
void | max (const block< dof_type > &xdofs, block< dof_type > &xresult) const |
The maximum value of the vector section defined by xdofs. More... | |
virtual section_evaluator & | operator= (const section_evaluator &xother) |
Assignment operator. 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... | |
Protected Member Functions inherited from fiber_bundle::differentiable_section_evaluator | |
differentiable_section_evaluator () | |
Default constructor. More... | |
Protected Member Functions inherited from fiber_bundle::section_evaluator | |
section_evaluator () | |
Default constructor. More... | |
Protected Member Functions inherited from sheaf::any | |
any () | |
default constructor More... | |
Protected Attributes inherited from fiber_bundle::differentiable_section_evaluator | |
value_type * | _jacobian_values |
The result of the preceding call to "jacobian". More... | |
An abstract section evaluator with a bounded domain that supports integration (volume calculation) as well as differntiation.
Definition at line 41 of file integrable_section_evaluator.h.
fiber_bundle::integrable_section_evaluator::integrable_section_evaluator | ( | const integrable_section_evaluator & | xother | ) |
Copy constructor.
Definition at line 34 of file integrable_section_evaluator.cc.
References ~integrable_section_evaluator().
|
virtual |
Destructor.
Definition at line 51 of file integrable_section_evaluator.cc.
References volume().
Referenced by integrable_section_evaluator().
|
protected |
Default constructor.
Definition at line 187 of file integrable_section_evaluator.cc.
References clone().
Referenced by gauss_point().
|
pure virtual |
Virtual constructor, makes a new instance of the same type as this.
Is Abstract.
Implements fiber_bundle::differentiable_section_evaluator.
Implemented in fiber_bundle::bilinear_2d, fiber_bundle::linear_2d, fiber_bundle::linear_3d, fiber_bundle::trilinear_3d, fiber_bundle::linear_1d, fiber_bundle::uniform_2d, fiber_bundle::uniform_1d, fiber_bundle::quadratic_1d, fiber_bundle::uniform_3d, fiber_bundle::quadratic_2d, fiber_bundle::quadratic_3d, fiber_bundle::constant_fcn_space, fiber_bundle::constant_tet, fiber_bundle::constant_hex, fiber_bundle::constant_quad, fiber_bundle::constant_point, fiber_bundle::constant_triangle, fiber_bundle::constant_segment, and fiber_bundle::linear_fcn_space.
Definition at line 212 of file integrable_section_evaluator.cc.
References operator=().
Referenced by integrable_section_evaluator().
|
pure virtual |
The local coordinates of the gauss point with index xindex.
Implemented in fiber_bundle::bilinear_2d, fiber_bundle::linear_3d, fiber_bundle::linear_2d, fiber_bundle::trilinear_3d, fiber_bundle::linear_1d, fiber_bundle::uniform_2d, fiber_bundle::quadratic_1d, fiber_bundle::uniform_1d, fiber_bundle::uniform_3d, fiber_bundle::quadratic_2d, fiber_bundle::quadratic_3d, and fiber_bundle::constant_fcn_space.
Definition at line 162 of file integrable_section_evaluator.cc.
References integrable_section_evaluator().
Referenced by integrate().
|
pure virtual |
Computes the value of the integral of the integrand array...
Implemented in fiber_bundle::bilinear_2d, fiber_bundle::linear_2d, fiber_bundle::quadratic_1d, fiber_bundle::quadratic_3d, and fiber_bundle::constant_fcn_space.
Definition at line 95 of file integrable_section_evaluator.cc.
Referenced by volume().
|
virtual |
Computes the value of the integral of the integrand...
Reimplemented in fiber_bundle::bilinear_2d, fiber_bundle::linear_2d, fiber_bundle::quadratic_1d, and fiber_bundle::quadratic_3d.
Definition at line 130 of file integrable_section_evaluator.cc.
References gauss_point().
|
virtual |
Class invariant.
Reimplemented from fiber_bundle::differentiable_section_evaluator.
Reimplemented in fiber_bundle::bilinear_2d, fiber_bundle::linear_2d, fiber_bundle::linear_3d, fiber_bundle::trilinear_3d, fiber_bundle::linear_1d, fiber_bundle::uniform_2d, fiber_bundle::uniform_1d, fiber_bundle::quadratic_1d, fiber_bundle::uniform_3d, fiber_bundle::quadratic_2d, fiber_bundle::quadratic_3d, fiber_bundle::constant_fcn_space, fiber_bundle::constant_tet, fiber_bundle::constant_point, fiber_bundle::constant_triangle, fiber_bundle::constant_hex, fiber_bundle::constant_quad, fiber_bundle::constant_segment, and fiber_bundle::linear_fcn_space.
Definition at line 258 of file integrable_section_evaluator.cc.
References sheaf::any::invariant(), and is_ancestor_of().
Referenced by operator=().
|
virtual |
Conformance test; true if other conforms to this.
Reimplemented from fiber_bundle::differentiable_section_evaluator.
Reimplemented in fiber_bundle::bilinear_2d, fiber_bundle::linear_2d, fiber_bundle::linear_3d, fiber_bundle::trilinear_3d, fiber_bundle::linear_1d, fiber_bundle::uniform_2d, fiber_bundle::uniform_1d, fiber_bundle::quadratic_1d, fiber_bundle::uniform_3d, fiber_bundle::quadratic_2d, fiber_bundle::quadratic_3d, fiber_bundle::constant_fcn_space, fiber_bundle::constant_tet, fiber_bundle::constant_point, fiber_bundle::constant_triangle, fiber_bundle::constant_hex, fiber_bundle::constant_quad, fiber_bundle::constant_segment, and fiber_bundle::linear_fcn_space.
Definition at line 289 of file integrable_section_evaluator.cc.
Referenced by invariant().
|
virtual |
Assignment operator.
Definition at line 236 of file integrable_section_evaluator.cc.
References invariant().
Referenced by clone().
|
pure virtual |
Volume for specified coordinate dofs xcoord_dofs and fiber space dimension xdf.
Implemented in fiber_bundle::bilinear_2d, fiber_bundle::linear_3d, fiber_bundle::trilinear_3d, fiber_bundle::linear_2d, fiber_bundle::linear_1d, fiber_bundle::uniform_2d, fiber_bundle::quadratic_1d, fiber_bundle::uniform_1d, fiber_bundle::uniform_3d, fiber_bundle::quadratic_2d, fiber_bundle::quadratic_3d, fiber_bundle::constant_tet, fiber_bundle::constant_hex, fiber_bundle::constant_quad, fiber_bundle::constant_point, fiber_bundle::constant_segment, and fiber_bundle::constant_triangle.
Definition at line 68 of file integrable_section_evaluator.cc.
References integrate().
Referenced by ~integrable_section_evaluator().