SheafSystem  0.0.0.0
fiber_bundle::st2_algebra Namespace Reference

Namespace containing the 2d symmetric tensor algrebra functions for the fiber_bundles component of the sheaf system. More...

Functions

SHEAF_DLL_SPEC void trace (const st2 &x0, vd_value_type &xresult, bool xauto_access)
 The trace of a symmetric tensor (pre-allocated version for persistent types). More...
 
SHEAF_DLL_SPEC vd_value_type trace (const st2 &x0, bool xauto_access)
 The trace of a symmetric tensor (auto-allocated version for persistent types). More...
 
SHEAF_DLL_SPEC void trace (const st2_lite &x0, vd_value_type &xresult)
 The trace of a symmetric tensor (pre-allocated version for volatile types). More...
 
SHEAF_DLL_SPEC vd_value_type trace (const st2_lite &x0)
 The trace of a symmetric tensor (auto-allocated version for volatile types). More...
 
SHEAF_DLL_SPEC void determinant (const st2 &x0, vd_value_type &xresult, bool xauto_access)
 The determinant of a symmetric tensor (pre-allocated version for persistent types). More...
 
SHEAF_DLL_SPEC vd_value_type determinant (const st2 &x0, bool xauto_access)
 The determinant of a symmetric tensor (auto-allocated version for persistent types). More...
 
SHEAF_DLL_SPEC void determinant (const st2_lite &x0, vd_value_type &xresult)
 The determinant of a symmetric tensor (pre-allocated version for volatile types). More...
 
SHEAF_DLL_SPEC vd_value_type determinant (const st2_lite &x0)
 The determinant of a symmetric tensor (auto-allocated version for volatile types). More...
 
template<typename T , typename GLN >
T * to_principal_axes (const T &xlite, GLN &xtransform)
 Computes the principal axes basis for xlite. Returns the diagonalization in the auto-allocated result and the transform in the pre-allocated xtransform. More...
 
template<typename T , typename GLN >
void to_principal_axes (const T &xlite, GLN &xtransform, T &xresult)
 Computes the principal axes basis for xlite. Returns the diagonalization in xresult and the transform in xtransform (pre-allocated). More...
 
template<typename T , typename GLN >
void to_principal_axes (const T &xlite, const T &xpd_lite, GLN &xtransform, T &xresult)
 Computes the principal axes basis for xlite and an associated positive definite tensor xpd_lite, and transforms both into the basis of xlite. The matrix of xlite transforms to the diagonal matrix of the eigenvalues of xlite, and the matrix of the associated positive definite tensor xpd_lite becomes the identity matrix. More...
 
SHEAF_DLL_SPEC void determinant (const st2_e2 &x0, vd_value_type &xresult, bool xauto_access)
 The determinant of a symmetric tensor (pre-allocated version for persistent types). More...
 
SHEAF_DLL_SPEC vd_value_type determinant (const st2_e2 &x0, bool xauto_access)
 The determinant of a symmetric tensor (auto-allocated version for persistent types). More...
 
SHEAF_DLL_SPEC void determinant (const st2_e2_lite &x0, vd_value_type &xresult)
 The determinant of a symmetric tensor (pre-allocated version for volatile types). More...
 
SHEAF_DLL_SPEC vd_value_type determinant (const st2_e2_lite &x0)
 The determinant of a symmetric tensor (auto-allocated version for volatile types). More...
 
template<>
SHEAF_DLL_SPEC void to_principal_axes (const st2_e2_lite &xlite, gl2_lite &xtransform, st2_e2_lite &xresult)
 Computes the principal axes basis for xlite. Returns the diagonalization in xresult and the transform in xtransform (pre-allocated). Specialization for st2_e2_lite. More...
 
template<>
SHEAF_DLL_SPEC void to_principal_axes (const st2_e2_lite &xlite, const st2_e2_lite &xpd_lite, gl2_lite &xtransform, st2_e2_lite &xresult)
 Computes the principal axes basis for xlite and an associated positive definite tensor xpd_lite, and transforms both into the basis of xlite. The matrix of xlite transforms to the diagonal matrix of the eigenvalues of xlite, and the matrix of the associated positive definite tensor xpd_lite becomes the identity matrix. Specialization for st2_e2_lite. More...
 
SHEAF_DLL_SPEC void determinant (const st2_e3 &x0, vd_value_type &xresult, bool xauto_access)
 The determinant of a symmetric tensor (pre-allocated version for persistent types). More...
 
SHEAF_DLL_SPEC vd_value_type determinant (const st2_e3 &x0, bool xauto_access)
 The determinant of a symmetric tensor (auto-allocated version for persistent types). More...
 
SHEAF_DLL_SPEC void determinant (const st2_e3_lite &x0, vd_value_type &xresult)
 The determinant of a symmetric tensor (pre-allocated version for volatile types). More...
 
SHEAF_DLL_SPEC vd_value_type determinant (const st2_e3_lite &x0)
 The determinant of a symmetric tensor (auto-allocated version for volatile types). More...
 
template<>
SHEAF_DLL_SPEC void to_principal_axes (const st2_e3_lite &xlite, gl3_lite &xtransform, st2_e3_lite &xresult)
 Computes the principal axes basis for xlite. Returns the diagonalization in xresult and the transform in xtransform (pre-allocated). Specialization for st2_e3_lite. More...
 

Detailed Description

Namespace containing the 2d symmetric tensor algrebra functions for the fiber_bundles component of the sheaf system.

Function Documentation

◆ determinant() [1/12]

void fiber_bundle::st2_algebra::determinant ( const st2 x0,
vd_value_type xresult,
bool  xauto_access 
)

◆ determinant() [2/12]

fiber_bundle::vd_value_type fiber_bundle::st2_algebra::determinant ( const st2 x0,
bool  xauto_access 
)

The determinant of a symmetric tensor (auto-allocated version for persistent types).

Precondition
  • precondition_of(determinant(x0, result, xauto_access))
Postcondition
  • postcondition_of(determinant(x0, result, xauto_access))

Definition at line 1263 of file st2.cc.

References determinant().

◆ determinant() [3/12]

void fiber_bundle::st2_algebra::determinant ( const st2_lite x0,
vd_value_type xresult 
)

The determinant of a symmetric tensor (pre-allocated version for volatile types).

Definition at line 1286 of file st2.cc.

References determinant().

◆ determinant() [4/12]

fiber_bundle::vd_value_type fiber_bundle::st2_algebra::determinant ( const st2_lite x0)

The determinant of a symmetric tensor (auto-allocated version for volatile types).

Precondition
  • precondition_of(determinant(x0, result))
Postcondition
  • postcondition_of(determinant(x0, result))

Definition at line 1319 of file st2.cc.

References determinant().

◆ determinant() [5/12]

void fiber_bundle::st2_algebra::determinant ( const st2_e2 x0,
vd_value_type xresult,
bool  xauto_access 
)

The determinant of a symmetric tensor (pre-allocated version for persistent types).

Precondition
  • x0.state_is_auto_read_accessible(xauto_access)
Postcondition
  • -unexecutable( "xresult == determinant of x0" )

Definition at line 1365 of file st2_e2.cc.

References fiber_bundle::st2::component(), determinant(), sheaf::poset_component::get_read_access(), sheaf::poset_component::release_access(), and sheaf::read_write_monitor_handle::state_is_auto_read_accessible().

◆ determinant() [6/12]

fiber_bundle::vd_value_type fiber_bundle::st2_algebra::determinant ( const st2_e2 x0,
bool  xauto_access 
)

The determinant of a symmetric tensor (auto-allocated version for persistent types).

Precondition
  • precondition_of(determinant(x0, result, xauto_access))
Postcondition
  • postcondition_of(determinant(x0, result, xauto_access))

Definition at line 1401 of file st2_e2.cc.

References determinant().

◆ determinant() [7/12]

void fiber_bundle::st2_algebra::determinant ( const st2_e2_lite x0,
vd_value_type xresult 
)

The determinant of a symmetric tensor (pre-allocated version for volatile types).

Postcondition
  • -unexecutable( "xresult == determinant of x0" )

Definition at line 1425 of file st2_e2.cc.

References fiber_bundle::st2_lite::component(), and determinant().

◆ determinant() [8/12]

fiber_bundle::vd_value_type fiber_bundle::st2_algebra::determinant ( const st2_e2_lite x0)

The determinant of a symmetric tensor (auto-allocated version for volatile types).

Precondition
  • precondition_of(determinant(x0, result))
Postcondition
  • postcondition_of(determinant(x0, result))

Definition at line 1449 of file st2_e2.cc.

References fiber_bundle::sec_at0_algebra::atan2(), fiber_bundle::st2_e2_row_dofs_type< T >::components, fiber_bundle::gl2_row_dofs_type< T >::components, fiber_bundle::sec_at0_algebra::cos(), determinant(), fiber_bundle::sec_at0_algebra::sin(), fiber_bundle::sec_at0_algebra::sqrt(), and to_principal_axes().

◆ determinant() [9/12]

void fiber_bundle::st2_algebra::determinant ( const st2_e3 x0,
vd_value_type xresult,
bool  xauto_access 
)

The determinant of a symmetric tensor (pre-allocated version for persistent types).

Precondition
  • x0.state_is_auto_read_accessible(xauto_access)
Postcondition
  • -unexecutable( "xresult == determinant of x0" )

Definition at line 1510 of file st2_e3.cc.

References fiber_bundle::st2::component(), determinant(), sheaf::poset_component::get_read_access(), sheaf::poset_component::release_access(), and sheaf::read_write_monitor_handle::state_is_auto_read_accessible().

◆ determinant() [10/12]

fiber_bundle::vd_value_type fiber_bundle::st2_algebra::determinant ( const st2_e3 x0,
bool  xauto_access 
)

The determinant of a symmetric tensor (auto-allocated version for persistent types).

Precondition
  • precondition_of(determinant(x0, result, xauto_access))
Postcondition
  • postcondition_of(determinant(x0, result, xauto_access))

Definition at line 1556 of file st2_e3.cc.

References determinant().

◆ determinant() [11/12]

void fiber_bundle::st2_algebra::determinant ( const st2_e3_lite x0,
vd_value_type xresult 
)

The determinant of a symmetric tensor (pre-allocated version for volatile types).

Postcondition
  • -unexecutable( "xresult == determinant of x0" )

Definition at line 1580 of file st2_e3.cc.

References fiber_bundle::st2_lite::component(), and determinant().

◆ determinant() [12/12]

fiber_bundle::vd_value_type fiber_bundle::st2_algebra::determinant ( const st2_e3_lite x0)

The determinant of a symmetric tensor (auto-allocated version for volatile types).

Precondition
  • precondition_of(determinant(x0, result))
Postcondition
  • postcondition_of(determinant(x0, result))

Definition at line 1614 of file st2_e3.cc.

References fiber_bundle::gl3_lite::basis_matrix(), fiber_bundle::gl3_lite::component_matrix(), determinant(), fiber_bundle::jacobi_transformation(), and to_principal_axes().

◆ to_principal_axes() [1/6]

template<typename T , typename GLN >
T * fiber_bundle::st2_algebra::to_principal_axes ( const T &  xlite,
GLN &  xtransform 
)

Computes the principal axes basis for xlite. Returns the diagonalization in the auto-allocated result and the transform in the pre-allocated xtransform.

Definition at line 40 of file st2.impl.h.

Referenced by determinant().

◆ to_principal_axes() [2/6]

template<typename T , typename GLN >
void fiber_bundle::st2_algebra::to_principal_axes ( const T &  xlite,
GLN &  xtransform,
T &  xresult 
)

Computes the principal axes basis for xlite. Returns the diagonalization in xresult and the transform in xtransform (pre-allocated).

Not Implemented.

Not Implemented.

Definition at line 58 of file st2.impl.h.

◆ to_principal_axes() [3/6]

template<typename T , typename GLN >
void fiber_bundle::st2_algebra::to_principal_axes ( const T &  xlite,
const T &  xpd_lite,
GLN &  xtransform,
T &  xresult 
)

Computes the principal axes basis for xlite and an associated positive definite tensor xpd_lite, and transforms both into the basis of xlite. The matrix of xlite transforms to the diagonal matrix of the eigenvalues of xlite, and the matrix of the associated positive definite tensor xpd_lite becomes the identity matrix.

Not Implemented.

Not Implemented.

Definition at line 72 of file st2.impl.h.

◆ to_principal_axes() [4/6]

template<>
SHEAF_DLL_SPEC void fiber_bundle::st2_algebra::to_principal_axes ( const st2_e2_lite xlite,
gl2_lite xtransform,
st2_e2_lite xresult 
)

Computes the principal axes basis for xlite. Returns the diagonalization in xresult and the transform in xtransform (pre-allocated). Specialization for st2_e2_lite.

◆ to_principal_axes() [5/6]

template<>
SHEAF_DLL_SPEC void fiber_bundle::st2_algebra::to_principal_axes ( const st2_e2_lite xlite,
const st2_e2_lite xpd_lite,
gl2_lite xtransform,
st2_e2_lite xresult 
)

Computes the principal axes basis for xlite and an associated positive definite tensor xpd_lite, and transforms both into the basis of xlite. The matrix of xlite transforms to the diagonal matrix of the eigenvalues of xlite, and the matrix of the associated positive definite tensor xpd_lite becomes the identity matrix. Specialization for st2_e2_lite.

◆ to_principal_axes() [6/6]

template<>
SHEAF_DLL_SPEC void fiber_bundle::st2_algebra::to_principal_axes ( const st2_e3_lite xlite,
gl3_lite xtransform,
st2_e3_lite xresult 
)

Computes the principal axes basis for xlite. Returns the diagonalization in xresult and the transform in xtransform (pre-allocated). Specialization for st2_e3_lite.

◆ trace() [1/4]

void fiber_bundle::st2_algebra::trace ( const st2 x0,
vd_value_type xresult,
bool  xauto_access 
)

The trace of a symmetric tensor (pre-allocated version for persistent types).

Precondition
  • x0.state_is_auto_read_accessible(xauto_access)
Postcondition
  • -unexecutable( "xresult == trace(x0)" )

Definition at line 1116 of file st2.cc.

References fiber_bundle::st2::component(), fiber_bundle::tp::dd(), sheaf::poset_component::get_read_access(), sheaf::poset_component::release_access(), and sheaf::read_write_monitor_handle::state_is_auto_read_accessible().

Referenced by fiber_bundle::sec_st2::invariant(), fiber_bundle::st2::invariant(), fields::field_st2_algebra::trace(), and trace().

◆ trace() [2/4]

fiber_bundle::vd_value_type fiber_bundle::st2_algebra::trace ( const st2 x0,
bool  xauto_access 
)

The trace of a symmetric tensor (auto-allocated version for persistent types).

Precondition
  • precondition_of(trace(x0, result, xauto_access))
Postcondition
  • postcondition_of(trace(x0, result, xauto_access))

Definition at line 1154 of file st2.cc.

References trace().

◆ trace() [3/4]

void fiber_bundle::st2_algebra::trace ( const st2_lite x0,
vd_value_type xresult 
)

The trace of a symmetric tensor (pre-allocated version for volatile types).

Postcondition
  • -unexecutable( "xresult == trace(x0)" )

Definition at line 1178 of file st2.cc.

References fiber_bundle::st2_lite::component(), fiber_bundle::tp_lite::dd(), and trace().

◆ trace() [4/4]

fiber_bundle::vd_value_type fiber_bundle::st2_algebra::trace ( const st2_lite x0)

The trace of a symmetric tensor (auto-allocated version for volatile types).

Precondition
  • precondition_of(trace(x0, result))
Postcondition
  • postcondition_of(trace(x0, result))

Definition at line 1204 of file st2.cc.

References determinant(), and trace().