Edge function for the HEX8TB side-connector wall element. More...
#include <cl_EF_HEX8TB.hpp>
Public Member Functions | |
| EF_HEX8TB () | |
| constructor | |
| ~EF_HEX8TB () override=default | |
| destructor | |
| void | link (Element *aElement) override |
| connect function with element | |
| void | precompute (const Matrix< real > &aXi) override |
| only needed for higher order elements | |
| const Matrix< real > & | E (const uint aIndex) override |
| const Matrix< real > & | C (const uint aIndex) override |
| const Matrix< real > & | G (const uint aIndex) override |
| gradient operator for h-field, layout contract in EdgeFunction::mGrad. | |
| void | update_nabla (const uint aIndex) override |
| the Jacobian is constant per element and set in link(); this override only exists because the Calculator calls it before reading det_J() | |
| Public Member Functions inherited from belfem::fem::EdgeFunction | |
| EdgeFunction ()=default | |
| trivial constructor | |
| virtual | ~EdgeFunction ()=default |
| trivial destructor | |
| real | det_J () const |
| returns the current value of the determinant | |
| real | abs_det_J () const |
| returns the current value of the determinant | |
| real | sum_w () const |
| returns the sum of all integration weights | |
| uint | ndofs () const |
Additional Inherited Members | |
| Protected Attributes inherited from belfem::fem::EdgeFunction | |
| Matrix< real > | mJ |
| the Geometry Jacobian (transposed) | |
| Matrix< real > | mInvJ |
| the inverse of the Geometry Jacobian (transposed) | |
| real | mDetJ = BELFEM_QUIET_NAN |
| the determinant of the Geometry Jacobian | |
| real | mAbsDetJ = BELFEM_QUIET_NAN |
| the absolute value determinant of the Geometry Jacobian | |
| Matrix< real > | mE |
| Matrix< real > | mC |
| matrix containing the curl for the H-Function | |
| Matrix< real > | mGrad |
| real | mSumW |
| sum of all weights | |
| uint | mNumDofs |
Edge function for the HEX8TB side-connector wall element.
Four longitudinal edge dofs on edges (0,1), (3,2), (4,5), (7,6), all pointing in +xi (the side-curve direction). The element is a degenerate cuboid: the metric uses the exact width (eta) and thickness (zeta) stored on the mesh blocks, plus the midpoint-to-midpoint length (xi). The node positions only orient the frame; they never set the thin dimensions, which are physical collapsed-layer data. The Jacobian is therefore constant per element and is computed once in link().
| belfem::fem::EF_HEX8TB::EF_HEX8TB | ( | ) |
constructor
|
overridedefault |
destructor
Implements belfem::fem::EdgeFunction.
Reimplemented from belfem::fem::EdgeFunction.
gradient operator for h-field, layout contract in EdgeFunction::mGrad.
Exact on the class's own convention: the wall metric is the imposed exact cuboid frame ( t, b, n ) from link(), so the map is affine and grad( e_k ) = s_k ( grad F_k ) (x) nabla xi with all frame factors element constants. The frame is orthonormal, hence div( e_k ) == 0 identically.
Implements belfem::fem::EdgeFunction.
|
overridevirtual |
connect function with element
Implements belfem::fem::EdgeFunction.
|
inlineoverridevirtual |
the Jacobian is constant per element and set in link(); this override only exists because the Calculator calls it before reading det_J()
Reimplemented from belfem::fem::EdgeFunction.