SheafSystem
0.0.0.0
|
A section evaluator using linear interpolation over a triangular 2D domain. More...
#include <linear_2d.h>
LINEAR_2D FACET | |
linear_2d () | |
Default constructor. More... | |
linear_2d (const linear_2d &xother) | |
Copy constructor. More... | |
virtual | ~linear_2d () |
Destructor. More... | |
LINEAR_FCN_SPACE FACET | |
| |
virtual int | dl () const |
The dimension of this function space. More... | |
virtual void | basis_at_coord (const dof_type xlocal_coord[], size_type xlocal_coord_ub) |
Computes the value of each basis function at local coordinates xlocal_coord. More... | |
void | basis_derivs_at_coord (const dof_type xlocal_coord[], size_type xlocal_coord_ub) |
Computes the value of the derivatives of each basis function at local coordinates xlocal_coord. More... | |
INTEGRABLE_SECTION_EVALUATOR FACET | |
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) |
Determinant of Jacobian matrix (square) More... | |
value_type | volume (const dof_type xcoord_dofs[], size_type xcoord_dofs_ub, size_type xdf) |
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) |
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 xintegrands[], value_type xresult_integrals[], size_type xresult_integrals_ub) |
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... | |
void | gauss_point (pod_index_type xindex, coord_type xresult[], size_type xresult_ub) |
The local coordinates of the gauss point with index xindex. More... | |
DIFFERENTIABLE_SECTION_EVALUATOR FACET | |
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 |
First partial derivative of this with respect to local coordinate xlocal_coord_index. More... | |
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) |
Jacobian matrix. More... | |
DOMAIN FACET | |
virtual int | db () const |
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 |
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 | edge_center (pod_index_type xi, coord_type xresult[], size_type xresult_ub) const |
The local cordinates of the xi-th edge. More... | |
void | edge_center (pod_index_type xi, block< coord_type > &xresult) const |
The local cordinates of the xi-th edge (boundary). More... | |
virtual bool | in_standard_domain (const dof_type xlocal_coords[], size_type xlocal_coords_ub) const |
Return true if the specified local coordinates are in the "standard" domain; otherwise return false. More... | |
EVALUATION FACET | |
virtual void | coord_at_value (const dof_type xdofs[], size_type xdofs_ub, const dof_type xglobal_coords[], size_type xglobal_coord_ub, dof_type xlocal_coords[], size_type xlocal_coords_ub) const |
The local coordinates of a point at which the field has the value xvalue. The dofs are assumed to be interleaved (x0, y0, x1, y1, ...). More... | |
ANY FACET | |
virtual linear_2d * | clone () const |
Virtual constructor, creates a new instance of the same type as this. More... | |
virtual linear_2d & | operator= (const section_evaluator &xother) |
Assignment operator. More... | |
linear_2d & | operator= (const linear_2d &xother) |
Assignment operator. More... | |
virtual bool | invariant () const |
Class invariant. More... | |
virtual bool | is_ancestor_of (const any *xother) 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::linear_fcn_space | |
linear_fcn_space (const linear_fcn_space &xother) | |
Copy constructor. More... | |
virtual | ~linear_fcn_space () |
Destructor. More... | |
const value_type * | basis_values () const |
The result of the preceding call to basis_at_coord. More... | |
const value_type * | basis_deriv_values () const |
The result of the preceding call to basis_derivs_at_coord. More... | |
virtual size_type | dof_ct () const |
The number of dofs required for each component of the dependent variable. 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 |
Computes the value of the function at local coordinates xlocal_coords using the degrees of freedom xdofs. More... | |
linear_fcn_space & | operator= (const linear_fcn_space &xother) |
Assignment operator. More... | |
Public Member Functions inherited from fiber_bundle::integrable_section_evaluator | |
integrable_section_evaluator (const integrable_section_evaluator &xother) | |
Copy constructor. More... | |
virtual | ~integrable_section_evaluator () |
Destructor. More... | |
virtual integrable_section_evaluator & | operator= (const integrable_section_evaluator &xother) |
Assignment operator. 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... | |
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... | |
const value_type * | jacobian_values () const |
The result of the preceding call to jacobian. 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... | |
void | local_coordinates (pod_index_type xindex, block< coord_type > &xresult) const |
The local coordinates of the dof with local index xindex. More... | |
void | center (block< coord_type > &xresult) const |
The local coordinates at the center of the evaluator. More... | |
bool | in_standard_domain (const block< dof_type > &xlocal_coords) const |
True if the specified local coordinates are in the "standard" domain. 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... | |
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... | |
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... | |
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::linear_fcn_space | |
linear_fcn_space () | |
Default constructor. More... | |
Protected Member Functions inherited from fiber_bundle::integrable_section_evaluator | |
integrable_section_evaluator () | |
Default constructor. 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::linear_fcn_space | |
value_type * | _basis_values |
The result of the preceding call to basis_at_coord. More... | |
value_type * | _basis_deriv_values |
The result of the preceding call to basis_derivs_at_coord. More... | |
Protected Attributes inherited from fiber_bundle::differentiable_section_evaluator | |
value_type * | _jacobian_values |
The result of the preceding call to "jacobian". More... | |
A section evaluator using linear interpolation over a triangular 2D domain.
Definition at line 39 of file linear_2d.h.
fiber_bundle::linear_2d::linear_2d | ( | ) |
fiber_bundle::linear_2d::linear_2d | ( | const linear_2d & | xother | ) |
Copy constructor.
Definition at line 59 of file linear_2d.cc.
References ~linear_2d().
|
virtual |
|
virtual |
Computes the value of each basis function at local coordinates xlocal_coord.
Implements fiber_bundle::linear_fcn_space.
Definition at line 120 of file linear_2d.cc.
References basis_derivs_at_coord().
Referenced by dl().
|
virtual |
Computes the value of the derivatives of each basis function at local coordinates xlocal_coord.
Implements fiber_bundle::linear_fcn_space.
Definition at line 147 of file linear_2d.cc.
References jacobian_determinant().
Referenced by basis_at_coord().
|
virtual |
The local coordinates at the center of the evaluator.
Reimplemented from fiber_bundle::section_evaluator.
Definition at line 703 of file linear_2d.cc.
References edge_center().
Referenced by local_coordinates().
|
virtual |
Virtual constructor, creates a new instance of the same type as this.
Implements fiber_bundle::linear_fcn_space.
Definition at line 956 of file linear_2d.cc.
References invariant(), and operator=().
Referenced by coord_at_value().
|
virtual |
The local coordinates of a point at which the field has the value xvalue. The dofs are assumed to be interleaved (x0, y0, x1, y1, ...).
Implements fiber_bundle::section_evaluator.
Definition at line 863 of file linear_2d.cc.
References clone().
Referenced by in_standard_domain().
|
virtual |
The base dimension; the dimension of the local coordinates (independent variable).
Implements fiber_bundle::section_evaluator.
Definition at line 645 of file linear_2d.cc.
References local_coordinates().
Referenced by jacobian().
|
virtual |
The dimension of this function space.
Implements fiber_bundle::linear_fcn_space.
Definition at line 98 of file linear_2d.cc.
References basis_at_coord().
Referenced by ~linear_2d().
|
virtual |
First partial derivative of this with respect to local coordinate xlocal_coord_index.
Implements fiber_bundle::differentiable_section_evaluator.
Definition at line 527 of file linear_2d.cc.
References jacobian().
Referenced by gauss_point().
void fiber_bundle::linear_2d::edge_center | ( | pod_index_type | xi, |
coord_type | xresult[], | ||
size_type | xresult_ub | ||
) | const |
The local cordinates of the xi-th edge.
Definition at line 729 of file linear_2d.cc.
Referenced by center(), and fields::edge_centered_polygon_refiner::refine_coordinates().
void fiber_bundle::linear_2d::edge_center | ( | pod_index_type | xi, |
block< coord_type > & | xresult | ||
) | const |
The local cordinates of the xi-th edge (boundary).
Definition at line 802 of file linear_2d.cc.
References sheaf::auto_block< T, un_block_initialization_policy< T > >::base(), sheaf::auto_block< T, un_block_initialization_policy< T > >::ct(), in_standard_domain(), sheaf::auto_block< T, un_block_initialization_policy< T > >::set_ct(), and sheaf::auto_block< T, un_block_initialization_policy< T > >::ub().
|
protectedvirtual |
The local coordinates of the gauss point with index xindex.
Implements fiber_bundle::integrable_section_evaluator.
Definition at line 492 of file linear_2d.cc.
References dxi_local().
Referenced by integrate().
|
virtual |
Return true if the specified local coordinates are in the "standard" domain; otherwise return false.
Implements fiber_bundle::section_evaluator.
Definition at line 826 of file linear_2d.cc.
References coord_at_value().
Referenced by edge_center().
|
virtual |
Computes the value of the integral of the integrand array...
Implements fiber_bundle::integrable_section_evaluator.
Definition at line 364 of file linear_2d.cc.
Referenced by integrate(), and volume().
|
virtual |
Computes the value of the integral of the integrand array...
Definition at line 413 of file linear_2d.cc.
References integrate().
|
virtual |
Computes the value of the integral of the integrand...
Reimplemented from fiber_bundle::integrable_section_evaluator.
Definition at line 453 of file linear_2d.cc.
References gauss_point().
|
virtual |
Class invariant.
Reimplemented from fiber_bundle::linear_fcn_space.
Definition at line 1026 of file linear_2d.cc.
References is_ancestor_of().
Referenced by clone(), and operator=().
|
virtual |
Conformance test; true if other conforms to this.
Reimplemented from fiber_bundle::linear_fcn_space.
Definition at line 1059 of file linear_2d.cc.
Referenced by invariant().
|
virtual |
Jacobian matrix.
Reimplemented from fiber_bundle::differentiable_section_evaluator.
Definition at line 560 of file linear_2d.cc.
References db().
Referenced by dxi_local().
|
virtual |
Determinant of Jacobian matrix (square)
Reimplemented from fiber_bundle::differentiable_section_evaluator.
Definition at line 202 of file linear_2d.cc.
References fiber_bundle::sec_at0_algebra::fabs(), fiber_bundle::sec_at0_algebra::sqrt(), and volume().
Referenced by basis_derivs_at_coord().
|
virtual |
The local coordinates of the dof with local index xindex.
Implements fiber_bundle::section_evaluator.
Definition at line 669 of file linear_2d.cc.
References center().
Referenced by db().
|
virtual |
Assignment operator.
Not Implemented.
Reimplemented from fiber_bundle::linear_fcn_space.
Definition at line 980 of file linear_2d.cc.
Referenced by clone().
fiber_bundle::linear_2d & fiber_bundle::linear_2d::operator= | ( | const linear_2d & | xother | ) |
Assignment operator.
Definition at line 1002 of file linear_2d.cc.
References invariant().
|
virtual |
Volume for specified coordinate dofs xcoord_dofs and fiber space dimension xdf.
Implements fiber_bundle::integrable_section_evaluator.
Definition at line 264 of file linear_2d.cc.
References integrate(), and fiber_bundle::sec_at0_algebra::sqrt().
Referenced by jacobian_determinant().