|
OOFEM 3.0
|
#include <tensor2.h>
Public Member Functions | |
| Tensor2_3d () | |
| Tensor2_3d (const oofem::FloatArrayF< 9 > &array) | |
| const FloatArrayF< 9 > | to_voigt_form () |
| Tensor2_3d | computeTensorPower (double pow, int nf=10) |
| std::pair< FloatArrayF< 3 >, FloatMatrixF< 3, 3 > > | eigs (int nf=15) const |
| Tensor4_3d | compute_dCm_dC (double m, int nf=10) |
| Tensor2_3d | compute_cofactor () const |
| double | compute_determinant () const |
| std::pair< double, Tensor2_3d > | compute_determinant_and_cofactor () const |
| Tensor2_3d | compute_inverse () const |
| Tensor2_3d | compute_tensor_cross_product (const Tensor2_3d &B) const |
| Tensor4_3d | compute_tensor_cross_product () const |
Static Public Member Functions | |
| static Tensor2_3d | computeTensorPowerFromEigs (const FloatArray &eVals, const FloatMatrix &eVecs, double m) |
| static Tensor2_3d | computeTensorPowerFromEigs (const FloatArray &eVals, const FloatMatrix &eVecs, double m, const FloatArray &coeff) |
| static Tensor4_3d | compute_dCm_dC_fromEigs (double m, const FloatArray &lam, const FloatMatrix &N) |
| static const Tensor2_3d | UnitTensor () |
|
inline |
Creates second-order tensor in 3d Initialized with zeros
Definition at line 67 of file tensor2.h.
Referenced by compute_cofactor(), compute_determinant_and_cofactor(), compute_inverse(), compute_tensor_cross_product(), computeTensorPower(), computeTensorPowerFromEigs(), computeTensorPowerFromEigs(), eigs(), and UnitTensor().
|
inline |
Creates a second-order order tensor in 3d from floatarrayf<9>
Definition at line 83 of file tensor2.h.
References oofem::FloatArrayF< N >::at().
|
inline |
Computes cofactor
Definition at line 433 of file tensor2.h.
References compute_tensor_cross_product(), i_3, j_3, and Tensor2_3d().
Referenced by oofem::BaseHyperElasticMaterial::compute_dJ_dF().
|
inline |
Calculated derivative of C^m wrt C
| m | - power |
| nf | - number of significant figures |
Definition at line 287 of file tensor2.h.
References compute_dCm_dC_fromEigs(), and eigs().
|
inlinestatic |
Calculated derivative of C^m wrt C from given eigenvalues, eigenvectors and power m
| m | - power |
| nf | - number of significant figures |
Definition at line 300 of file tensor2.h.
References oofem::FloatArray::at(), oofem::FloatMatrix::at(), and N.
Referenced by compute_dCm_dC(), and oofem::OgdenCompressibleMaterial::give3dMaterialStiffnessMatrix_dPdF().
|
inline |
Computes determinant
Definition at line 444 of file tensor2.h.
References compute_tensor_cross_product(), m_3, and n_3.
Referenced by oofem::BaseHyperElasticMaterial::compute_d2I1_Cdev_dF2(), oofem::BaseHyperElasticMaterial::compute_dI2_Cdev_dF(), oofem::BaseHyperElasticMaterial::compute_dVolumetricEnergy_dF(), oofem::BaseHyperElasticMaterial::compute_I1_Cdev_from_F(), oofem::BaseHyperElasticMaterial::compute_I2_Cdev_from_F(), oofem::BaseHyperElasticMaterial::compute_I3_C_from_C(), oofem::BaseHyperElasticMaterial::compute_I3_C_from_F(), and oofem::OgdenCompressibleMaterial::giveDeviatoricSecondPKStressVector_3d().
|
inline |
Computes determinant and cofactor
Definition at line 453 of file tensor2.h.
References compute_tensor_cross_product(), i_3, j_3, and Tensor2_3d().
Referenced by oofem::BaseHyperElasticMaterial::compute_d2I2_Cdev_dF2(), oofem::BaseHyperElasticMaterial::compute_d2I3_C_dF2(), oofem::BaseHyperElasticMaterial::compute_d2VolumetricEnergy_dF2(), oofem::BaseHyperElasticMaterial::compute_dI1_Cdev_dF(), oofem::BaseHyperElasticMaterial::compute_dI2_Cdev_dF(), oofem::BaseHyperElasticMaterial::compute_dI3_C_dF(), compute_inverse(), oofem::SimoPisterMaterial::give3dMaterialStiffnessMatrix_dPdF(), and oofem::SimoPisterMaterial::giveFirstPKStressVector_3d().
|
inline |
Computes inverse
Definition at line 465 of file tensor2.h.
References compute_determinant_and_cofactor(), i_3, j_3, and Tensor2_3d().
Referenced by oofem::BaseHyperElasticMaterial::compute_d2I1_Cdev_dF2(), oofem::OgdenCompressibleMaterial::give3dMaterialStiffnessMatrix_dPdF(), and oofem::OgdenCompressibleMaterial::giveDeviatoricSecondPKStressVector_3d().
|
inline |
Computes fourth-order tensor cross product
Definition at line 489 of file tensor2.h.
Referenced by compute_cofactor(), compute_determinant(), and compute_determinant_and_cofactor().
|
inline |
Computes second-order tensor cross product
| tensor | to calculate tensor cross product with |
Definition at line 478 of file tensor2.h.
References Tensor2_3d().
Referenced by oofem::BaseHyperElasticMaterial::compute_d2I3_C_dF2(), oofem::BaseHyperElasticMaterial::compute_d2J_dF2(), oofem::BaseHyperElasticMaterial::compute_d2VolumetricEnergy_dF2(), and oofem::SimoPisterMaterial::give3dMaterialStiffnessMatrix_dPdF().
|
inline |
Computes power of a second order tensor
| pow | power |
| nf | tolerance for eigenvalue calculation |
Definition at line 121 of file tensor2.h.
References computeTensorPowerFromEigs(), eigs(), and Tensor2_3d().
|
inlinestatic |
Computes power of a second order tensor from eigenvalues and eigenvectors
| eVals | eigen values |
| eVecs | eigenvectors |
| m | power |
Definition at line 135 of file tensor2.h.
References oofem::FloatArray::at(), and Tensor2_3d().
Referenced by computeTensorPower(), oofem::OgdenCompressibleMaterial::give3dMaterialStiffnessMatrix_dPdF(), and oofem::OgdenCompressibleMaterial::giveDeviatoricSecondPKStressVector_3d().
|
inlinestatic |
Computes power of a second order tensor from eigenvalues and eigenvectors and given coeffcinets for each eigenvalue
| eVals | eigen values |
| eVecs | eigenvectors |
| m | power |
| coeff | coefficients |
Definition at line 154 of file tensor2.h.
References oofem::FloatArray::at(), oofem::FloatMatrix::at(), and Tensor2_3d().
|
inline |
Solves the eigenvalues and eigenvectors of symmetric second-order tensor adapted from FloatMatrix function jacobi_
| nf | - number of significant figures |
Definition at line 174 of file tensor2.h.
References oofem::FloatArrayF< N >::at(), oofem::FloatMatrixF< N, M >::at(), OOFEM_ERROR, oofem::sum(), and Tensor2_3d().
Referenced by compute_dCm_dC(), computeTensorPower(), oofem::OgdenCompressibleMaterial::give3dMaterialStiffnessMatrix_dPdF(), and oofem::OgdenCompressibleMaterial::giveDeviatoricSecondPKStressVector_3d().
|
inline |
Transforms a second-order tensor into a floatarrayf<9>, using the Voigt notation
Definition at line 99 of file tensor2.h.
Referenced by oofem::BlatzKoMaterial::giveFirstPKStressVector_3d(), oofem::MooneyRivlinCompressibleMaterial::giveFirstPKStressVector_3d(), oofem::OgdenCompressibleMaterial::giveFirstPKStressVector_3d(), and oofem::SimoPisterMaterial::giveFirstPKStressVector_3d().
|
inlinestatic |
Creates second-order unit tensor
Definition at line 423 of file tensor2.h.
References Tensor2_3d().
Referenced by oofem::OgdenCompressibleMaterial::give3dMaterialStiffnessMatrix_dPdF().