|
MFEM
v3.4
Finite element discretization library
|
Auxiliary class for evaluating the 3x3 matrix invariants and their first and second derivatives. More...
#include <invariants.hpp>
Public Member Functions | |
| InvariantsEvaluator3D (const scalar_t *Jac=NULL) | |
| The Jacobian should use column-major storage. More... | |
| ~InvariantsEvaluator3D () | |
| void | SetJacobian (const scalar_t *Jac) |
| The Jacobian should use column-major storage. More... | |
| void | SetDerivativeMatrix (int height, const scalar_t *Deriv) |
The Deriv matrix is dof x 3, using column-major storage. More... | |
| scalar_t | Get_I1 () |
| scalar_t | Get_I1b () |
| scalar_t | Get_I2 () |
| scalar_t | Get_I2b () |
| scalar_t | Get_I3 () |
| scalar_t | Get_I3b () |
| const scalar_t * | Get_dI1 () |
| const scalar_t * | Get_dI1b () |
| const scalar_t * | Get_dI2 () |
| const scalar_t * | Get_dI2b () |
| const scalar_t * | Get_dI3 () |
| const scalar_t * | Get_dI3b () |
| void | Assemble_ddI1 (scalar_t w, scalar_t *A) |
| void | Assemble_ddI1b (scalar_t w, scalar_t *A) |
| void | Assemble_ddI2 (scalar_t w, scalar_t *A) |
| void | Assemble_ddI2b (scalar_t w, scalar_t *A) |
| void | Assemble_ddI3 (scalar_t w, scalar_t *A) |
| void | Assemble_ddI3b (scalar_t w, scalar_t *A) |
| void | Assemble_TProd (scalar_t w, const scalar_t *X, const scalar_t *Y, scalar_t *A) |
| void | Assemble_TProd (scalar_t w, const scalar_t *X, scalar_t *A) |
Protected Types | |
| enum | EvalMasks { HAVE_I1 = 1, HAVE_I1b = 2, HAVE_B_offd = 4, HAVE_I2 = 8, HAVE_I2b = 16, HAVE_I3b = 1<<5, HAVE_I3b_p = 1<<6, HAVE_dI1 = 1<<7, HAVE_dI1b = 1<<8, HAVE_dI2 = 1<<9, HAVE_dI2b = 1<<10, HAVE_dI3 = 1<<11, HAVE_dI3b = 1<<12, HAVE_DaJ = 1<<13, HAVE_DJt = 1<<14, HAVE_DdI2t = 1<<15 } |
Protected Member Functions | |
| bool | dont (int have_mask) const |
| void | Eval_I1 () |
| void | Eval_I1b () |
| void | Eval_B_offd () |
| void | Eval_I2 () |
| void | Eval_I2b () |
| void | Eval_I3b () |
| scalar_t | Get_I3b_p () |
| void | Eval_dI1 () |
| void | Eval_dI1b () |
| void | Eval_dI2 () |
| void | Eval_dI2b () |
| void | Eval_dI3 () |
| void | Eval_dI3b () |
| void | Eval_DZt (const scalar_t *Z, scalar_t **DZt_ptr) |
| void | Eval_DaJ () |
| void | Eval_DJt () |
| void | Eval_DdI2t () |
Protected Attributes | |
| const scalar_t * | J |
| scalar_t | I1 |
| scalar_t | I1b |
| scalar_t | I2 |
| scalar_t | I2b |
| scalar_t | I3b |
| scalar_t | I3b_p |
| scalar_t | dI1 [9] |
| scalar_t | dI1b [9] |
| scalar_t | dI2 [9] |
| scalar_t | dI2b [9] |
| scalar_t | dI3 [9] |
| scalar_t | dI3b [9] |
| scalar_t | B [6] |
| int | D_height |
| int | alloc_height |
| const scalar_t * | D |
| scalar_t * | DaJ |
| scalar_t * | DJt |
| scalar_t * | DdI2t |
| scalar_t * | DXt |
| scalar_t * | DYt |
| scalar_t | sign_detJ |
| int | eval_state |
Auxiliary class for evaluating the 3x3 matrix invariants and their first and second derivatives.
The type scalar_t must support the standard operations:
=, +=, -=, +, -, *, /, unary -, int*scalar_t, int/scalar_t, scalar_t/int
The type scalar_ops must define the static methods:
scalar_t sign(const scalar_t &); scalar_t pow(const scalar_t &x, int a, int b); // x^(a/b)
Definition at line 497 of file invariants.hpp.
|
protected |
| Enumerator | |
|---|---|
| HAVE_I1 | |
| HAVE_I1b | |
| HAVE_B_offd | |
| HAVE_I2 | |
| HAVE_I2b | |
| HAVE_I3b | |
| HAVE_I3b_p | |
| HAVE_dI1 | |
| HAVE_dI1b | |
| HAVE_dI2 | |
| HAVE_dI2b | |
| HAVE_dI3 | |
| HAVE_dI3b | |
| HAVE_DaJ | |
| HAVE_DJt | |
| HAVE_DdI2t | |
Definition at line 521 of file invariants.hpp.
|
inline |
The Jacobian should use column-major storage.
Definition at line 726 of file invariants.hpp.
|
inline |
Definition at line 730 of file invariants.hpp.
|
inline |
Definition at line 796 of file invariants.hpp.
|
inline |
Definition at line 830 of file invariants.hpp.
|
inline |
Definition at line 954 of file invariants.hpp.
|
inline |
Definition at line 1093 of file invariants.hpp.
|
inline |
Definition at line 1209 of file invariants.hpp.
|
inline |
Definition at line 1256 of file invariants.hpp.
|
inline |
Definition at line 1300 of file invariants.hpp.
|
inline |
Definition at line 1327 of file invariants.hpp.
|
inlineprotected |
Definition at line 544 of file invariants.hpp.
|
inlineprotected |
Definition at line 559 of file invariants.hpp.
|
inlineprotected |
Definition at line 706 of file invariants.hpp.
|
inlineprotected |
Definition at line 717 of file invariants.hpp.
|
inlineprotected |
Definition at line 600 of file invariants.hpp.
|
inlineprotected |
Definition at line 608 of file invariants.hpp.
|
inlineprotected |
Definition at line 621 of file invariants.hpp.
|
inlineprotected |
Definition at line 649 of file invariants.hpp.
|
inlineprotected |
Definition at line 665 of file invariants.hpp.
|
inlineprotected |
Definition at line 677 of file invariants.hpp.
|
inlineprotected |
Definition at line 712 of file invariants.hpp.
|
inlineprotected |
Definition at line 692 of file invariants.hpp.
|
inlineprotected |
Definition at line 546 of file invariants.hpp.
|
inlineprotected |
Definition at line 554 of file invariants.hpp.
|
inlineprotected |
Definition at line 568 of file invariants.hpp.
|
inlineprotected |
Definition at line 577 of file invariants.hpp.
|
inlineprotected |
Definition at line 583 of file invariants.hpp.
|
inline |
Definition at line 766 of file invariants.hpp.
|
inline |
Definition at line 770 of file invariants.hpp.
|
inline |
Definition at line 774 of file invariants.hpp.
|
inline |
Definition at line 778 of file invariants.hpp.
|
inline |
Definition at line 782 of file invariants.hpp.
|
inline |
Definition at line 786 of file invariants.hpp.
|
inline |
Definition at line 759 of file invariants.hpp.
|
inline |
Definition at line 760 of file invariants.hpp.
|
inline |
Definition at line 761 of file invariants.hpp.
|
inline |
Definition at line 762 of file invariants.hpp.
|
inline |
Definition at line 763 of file invariants.hpp.
|
inline |
Definition at line 764 of file invariants.hpp.
|
inlineprotected |
Definition at line 591 of file invariants.hpp.
|
inline |
The Deriv matrix is dof x 3, using column-major storage.
Definition at line 743 of file invariants.hpp.
|
inline |
The Jacobian should use column-major storage.
Definition at line 740 of file invariants.hpp.
|
protected |
Definition at line 515 of file invariants.hpp.
|
protected |
Definition at line 513 of file invariants.hpp.
|
protected |
Definition at line 516 of file invariants.hpp.
|
protected |
Definition at line 515 of file invariants.hpp.
|
protected |
Definition at line 517 of file invariants.hpp.
|
protected |
Definition at line 517 of file invariants.hpp.
|
protected |
Definition at line 512 of file invariants.hpp.
|
protected |
Definition at line 512 of file invariants.hpp.
|
protected |
Definition at line 512 of file invariants.hpp.
|
protected |
Definition at line 512 of file invariants.hpp.
|
protected |
Definition at line 512 of file invariants.hpp.
|
protected |
Definition at line 512 of file invariants.hpp.
|
protected |
Definition at line 517 of file invariants.hpp.
|
protected |
Definition at line 517 of file invariants.hpp.
|
protected |
Definition at line 517 of file invariants.hpp.
|
protected |
Definition at line 542 of file invariants.hpp.
|
protected |
Definition at line 508 of file invariants.hpp.
|
protected |
Definition at line 508 of file invariants.hpp.
|
protected |
Definition at line 508 of file invariants.hpp.
|
protected |
Definition at line 508 of file invariants.hpp.
|
protected |
Definition at line 508 of file invariants.hpp.
|
protected |
Definition at line 509 of file invariants.hpp.
|
protected |
Definition at line 501 of file invariants.hpp.
|
protected |
Definition at line 519 of file invariants.hpp.
1.8.5