![]() |
OGS
|
The invariants and the Kelving mapping are explained in detail in the article "On Advantages of the Kelvin Mapping in Finite Element Implementations of Deformation Processes" [22].
Namespaces | |
KelvinVector_detail | |
Classes | |
struct | Invariants |
Typedefs | |
template<int DisplacementDim> | |
using | KelvinVectorType = Eigen::Matrix< double, kelvin_vector_dimensions(DisplacementDim), 1, Eigen::ColMajor > |
template<int DisplacementDim> | |
using | KelvinMatrixType = Eigen::Matrix< double, kelvin_vector_dimensions(DisplacementDim), kelvin_vector_dimensions(DisplacementDim), Eigen::RowMajor > |
Functions | |
template<> | |
Eigen::Matrix< double, 4, 1, Eigen::ColMajor, 4, 1 > | inverse (Eigen::Matrix< double, 4, 1, Eigen::ColMajor, 4, 1 > const &v) |
template<> | |
Eigen::Matrix< double, 6, 1, Eigen::ColMajor, 6, 1 > | inverse (Eigen::Matrix< double, 6, 1, Eigen::ColMajor, 6, 1 > const &v) |
template<> | |
Eigen::Matrix< double, 3, 3 > | kelvinVectorToTensor (Eigen::Matrix< double, 4, 1, Eigen::ColMajor, 4, 1 > const &v) |
template<> | |
Eigen::Matrix< double, 3, 3 > | kelvinVectorToTensor (Eigen::Matrix< double, 6, 1, Eigen::ColMajor, 6, 1 > const &v) |
template<> | |
Eigen::Matrix< double, 3, 3 > | kelvinVectorToTensor (Eigen::Matrix< double, Eigen::Dynamic, 1, Eigen::ColMajor, Eigen::Dynamic, 1 > const &v) |
template<> | |
KelvinVectorType< 2 > | tensorToKelvin< 2 > (Eigen::Matrix< double, 3, 3 > const &m) |
template<> | |
KelvinVectorType< 3 > | tensorToKelvin< 3 > (Eigen::Matrix< double, 3, 3 > const &m) |
template<> | |
Eigen::Matrix< double, 4, 1 > | kelvinVectorToSymmetricTensor (Eigen::Matrix< double, 4, 1, Eigen::ColMajor, 4, 1 > const &v) |
template<> | |
Eigen::Matrix< double, 6, 1 > | kelvinVectorToSymmetricTensor (Eigen::Matrix< double, 6, 1, Eigen::ColMajor, 6, 1 > const &v) |
template<> | |
Eigen::Matrix< double, Eigen::Dynamic, 1, Eigen::ColMajor, Eigen::Dynamic, 1 > | kelvinVectorToSymmetricTensor (Eigen::Matrix< double, Eigen::Dynamic, 1, Eigen::ColMajor, Eigen::Dynamic, 1 > const &v) |
template<> | |
KelvinMatrixType< 2 > | fourthOrderRotationMatrix< 2 > (Eigen::Matrix< double, 2, 2, Eigen::ColMajor, 2, 2 > const &transformation) |
template<> | |
KelvinMatrixType< 3 > | fourthOrderRotationMatrix< 3 > (Eigen::Matrix< double, 3, 3, Eigen::ColMajor, 3, 3 > const &transformation) |
constexpr int | kelvin_vector_dimensions (int const displacement_dim) |
Kelvin vector dimensions for given displacement dimension. More... | |
template<int KelvinVectorSize> | |
Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > | inverse (Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > const &v) |
template<int KelvinVectorSize> | |
Eigen::Matrix< double, 3, 3 > | kelvinVectorToTensor (Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > const &v) |
template<int DisplacementDim> | |
KelvinVectorType< DisplacementDim > | tensorToKelvin (Eigen::Matrix< double, 3, 3 > const &m) |
template<int KelvinVectorSize> | |
Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > | kelvinVectorToSymmetricTensor (Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > const &v) |
template<typename Derived > | |
Eigen::Matrix< double, Eigen::MatrixBase< Derived >::RowsAtCompileTime, 1 > | symmetricTensorToKelvinVector (Eigen::MatrixBase< Derived > const &v) |
template<int DisplacementDim> | |
KelvinVectorType< DisplacementDim > | symmetricTensorToKelvinVector (std::vector< double > const &values) |
template<int DisplacementDim> | |
KelvinMatrixType< DisplacementDim > | fourthOrderRotationMatrix (Eigen::Matrix< double, DisplacementDim, DisplacementDim, Eigen::ColMajor, DisplacementDim, DisplacementDim > const &transformation) |
using MathLib::KelvinVector::KelvinMatrixType = typedef Eigen::Matrix<double, kelvin_vector_dimensions(DisplacementDim), kelvin_vector_dimensions(DisplacementDim), Eigen::RowMajor> |
Kelvin matrix type for given displacement dimension.
Definition at line 54 of file KelvinVector.h.
using MathLib::KelvinVector::KelvinVectorType = typedef Eigen::Matrix<double, kelvin_vector_dimensions(DisplacementDim), 1, Eigen::ColMajor> |
Kelvin vector type for given displacement dimension.
Definition at line 46 of file KelvinVector.h.
KelvinMatrixType<DisplacementDim> MathLib::KelvinVector::fourthOrderRotationMatrix | ( | Eigen::Matrix< double, DisplacementDim, DisplacementDim, Eigen::ColMajor, DisplacementDim, DisplacementDim > const & | transformation | ) |
Rotation tensor for Kelvin mapped vectors and tensors. It is meant to be used for rotation of stress/strain tensors epsilon:Q and tangent stiffness tensors Q*C*Q^t. 2D and 3D implementations available.
Referenced by MaterialLib::Solids::LinearElasticOrthotropic< DisplacementDim >::getElasticTensor(), and MaterialLib::Solids::MFront::MFront< DisplacementDim >::integrateStress().
KelvinMatrixType<2> MathLib::KelvinVector::fourthOrderRotationMatrix< 2 > | ( | Eigen::Matrix< double, 2, 2, Eigen::ColMajor, 2, 2 > const & | transformation | ) |
Definition at line 162 of file KelvinVector.cpp.
References OGS_FATAL.
KelvinMatrixType<3> MathLib::KelvinVector::fourthOrderRotationMatrix< 3 > | ( | Eigen::Matrix< double, 3, 3, Eigen::ColMajor, 3, 3 > const & | transformation | ) |
Definition at line 162 of file KelvinVector.cpp.
Eigen::Matrix<double, 4, 1, Eigen::ColMajor, 4, 1> MathLib::KelvinVector::inverse | ( | Eigen::Matrix< double, 4, 1, Eigen::ColMajor, 4, 1 > const & | v | ) |
Definition at line 34 of file KelvinVector.cpp.
References MathLib::KelvinVector::Invariants< KelvinVectorSize >::determinant().
Referenced by MaterialLib::Solids::Ehlers::calculatePlasticJacobian(), and MaterialLib::Solids::Ehlers::calculatePlasticResidual().
Eigen::Matrix<double, 6, 1, Eigen::ColMajor, 6, 1> MathLib::KelvinVector::inverse | ( | Eigen::Matrix< double, 6, 1, Eigen::ColMajor, 6, 1 > const & | v | ) |
Definition at line 48 of file KelvinVector.cpp.
References MathLib::KelvinVector::Invariants< KelvinVectorSize >::determinant().
Eigen::Matrix<double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1> MathLib::KelvinVector::inverse | ( | Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > const & | v | ) |
Inverse of a matrix in Kelvin vector representation. There are only implementations for the Kelvin vector size 4 and 6.
|
constexpr |
Kelvin vector dimensions for given displacement dimension.
Definition at line 23 of file KelvinVector.h.
References OGS_FATAL.
Referenced by ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::HydroMechanicsLocalAssembler(), ProcessLib::RichardsMechanics::IntegrationPointData< BMatricesType, ShapeMatrixTypeDisplacement, ShapeMatricesTypePressure, DisplacementDim, NPoints >::IntegrationPointData(), ProcessLib::TH2M::IntegrationPointData< BMatricesType, ShapeMatrixTypeDisplacement, ShapeMatricesTypePressure, DisplacementDim, NPoints >::IntegrationPointData(), ProcessLib::ThermoHydroMechanics::IntegrationPointData< BMatricesType, ShapeMatrixTypeDisplacement, ShapeMatricesTypePressure, DisplacementDim, NPoints >::IntegrationPointData(), ProcessLib::ThermoRichardsMechanics::IntegrationPointData< BMatricesType, ShapeMatrixTypeDisplacement, ShapeMatricesTypePressure, DisplacementDim, NPoints >::IntegrationPointData(), ProcessLib::PhaseField::PhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::PhaseFieldLocalAssembler(), ProcessLib::SmallDeformation::SmallDeformationLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::SmallDeformationLocalAssembler(), ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerMatrix< ShapeFunction, IntegrationMethod, DisplacementDim >::SmallDeformationLocalAssemblerMatrix(), ProcessLib::LIE::SmallDeformation::SmallDeformationLocalAssemblerMatrixNearFracture< ShapeFunction, IntegrationMethod, DisplacementDim >::SmallDeformationLocalAssemblerMatrixNearFracture(), ProcessLib::SmallDeformationNonlocal::SmallDeformationNonlocalLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::SmallDeformationNonlocalLocalAssembler(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::ThermoMechanicalPhaseFieldLocalAssembler(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::ThermoMechanicsLocalAssembler(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assemble(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobianForDeformationEquations(), ProcessLib::ThermoMechanicalPhaseField::ThermoMechanicalPhaseFieldLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobianForHeatConductionEquations(), MaterialLib::Solids::Phasefield::calculateDegradedStress(), MaterialLib::Solids::Ehlers::calculateDResidualDEps(), MaterialLib::Solids::Ehlers::calculatePlasticJacobian(), MaterialLib::Solids::Ehlers::calculatePlasticResidual(), ProcessLib::LinearBMatrix::computeBMatrix(), ProcessLib::RichardsMechanics::computeMicroPorosity(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::LIE::HydroMechanics::createHydroMechanicsProcess(), ProcessLib::HydroMechanics::createHydroMechanicsProcess(), ProcessLib::RichardsMechanics::createRichardsMechanicsProcess(), ProcessLib::SmallDeformation::createSmallDeformationProcess(), ProcessLib::TH2M::createTH2MProcess(), ProcessLib::ThermoHydroMechanics::createThermoHydroMechanicsProcess(), ProcessLib::ThermoMechanics::createThermoMechanicsProcess(), ProcessLib::ThermoRichardsMechanics::createThermoRichardsMechanicsProcess(), MaterialLib::Solids::MFront::MFront< DisplacementDim >::getBulkModulus(), MaterialLib::Solids::LinearElasticOrthotropic< DisplacementDim >::getElasticTensor(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getEpsilon(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getEpsilon(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getEpsilon(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getEpsilon(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::getEpsilon(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getEpsilon(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::getEpsilonMechanical(), ProcessLib::getIntegrationPointKelvinVectorData(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtSwellingStress(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getIntPtSwellingStress(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getSigma(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getSigma(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getSigma(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::getSigma(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getSigma(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getSwellingStress(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getSwellingStress(), ProcessLib::HydroMechanics::HydroMechanicsProcess< DisplacementDim >::initializeConcreteProcess(), MaterialLib::Solids::Ehlers::SolidEhlers< DisplacementDim >::integrateStress(), MaterialLib::Solids::MFront::MFront< DisplacementDim >::integrateStress(), MaterialLib::Solids::Ehlers::predict_sigma(), ProcessLib::setIntegrationPointKelvinVectorData(), symmetricTensorToKelvinVector(), MaterialLib::Solids::Lubby2::tangentStiffnessA(), and ProcessLib::RichardsMechanics::updateSwellingStressAndVolumetricStrain().
Eigen::Matrix<double, 4, 1> MathLib::KelvinVector::kelvinVectorToSymmetricTensor | ( | Eigen::Matrix< double, 4, 1, Eigen::ColMajor, 4, 1 > const & | v | ) |
Definition at line 142 of file KelvinVector.cpp.
Referenced by ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assemble(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::assembleWithJacobian(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::assembleWithJacobianForPressureEquations(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getEpsilon(), ProcessLib::getIntegrationPointKelvinVectorData(), MaterialLib::Solids::Ehlers::SolidEhlers< DisplacementDim >::getInternalVariables(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtDarcyVelocity(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtDarcyVelocity(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::getIntPtSwellingStress(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::getIntPtSwellingStress(), and ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::updateConstitutiveVariables().
Eigen::Matrix<double, 6, 1> MathLib::KelvinVector::kelvinVectorToSymmetricTensor | ( | Eigen::Matrix< double, 6, 1, Eigen::ColMajor, 6, 1 > const & | v | ) |
Definition at line 151 of file KelvinVector.cpp.
Eigen::Matrix<double, Eigen::Dynamic, 1, Eigen::ColMajor, Eigen::Dynamic, 1> MathLib::KelvinVector::kelvinVectorToSymmetricTensor | ( | Eigen::Matrix< double, Eigen::Dynamic, 1, Eigen::ColMajor, Eigen::Dynamic, 1 > const & | v | ) |
Definition at line 162 of file KelvinVector.cpp.
Eigen::Matrix<double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1> MathLib::KelvinVector::kelvinVectorToSymmetricTensor | ( | Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > const & | v | ) |
Conversion of a Kelvin vector to a short vector representation of a symmetric 3x3 matrix.
In the 2D case the entries for the xx, yy, zz, and xy components are stored. In the 3D case the entries for the xx, yy, zz, xy, yz, and xz components in that particular order are stored.
This is opposite of the symmetricTensorToKelvinVector()
Only implementations for KelvinVectorSize 4 and 6, and dynamic size vectors are provided.
Eigen::Matrix<double, 3, 3> MathLib::KelvinVector::kelvinVectorToTensor | ( | Eigen::Matrix< double, 4, 1, Eigen::ColMajor, 4, 1 > const & | v | ) |
Definition at line 64 of file KelvinVector.cpp.
Referenced by ProcessLib::SmallDeformationNonlocal::calculateDamageKappaD(), ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::computeSecondaryVariableConcrete(), ProcessLib::SmallDeformation::SmallDeformationLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::computeSecondaryVariableConcrete(), MaterialPropertyLib::EmbeddedFracturePermeability< DisplacementDim >::dValue(), kelvinVectorToTensor(), MaterialPropertyLib::EmbeddedFracturePermeability< DisplacementDim >::value(), and MaterialPropertyLib::OrthotropicEmbeddedFracturePermeability< DisplacementDim >::value().
Eigen::Matrix<double, 3, 3> MathLib::KelvinVector::kelvinVectorToTensor | ( | Eigen::Matrix< double, 6, 1, Eigen::ColMajor, 6, 1 > const & | v | ) |
Definition at line 74 of file KelvinVector.cpp.
Eigen::Matrix<double, 3, 3> MathLib::KelvinVector::kelvinVectorToTensor | ( | Eigen::Matrix< double, Eigen::Dynamic, 1, Eigen::ColMajor, Eigen::Dynamic, 1 > const & | v | ) |
Definition at line 85 of file KelvinVector.cpp.
References kelvinVectorToTensor(), and OGS_FATAL.
Eigen::Matrix<double, 3, 3> MathLib::KelvinVector::kelvinVectorToTensor | ( | Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > const & | v | ) |
Conversion of a Kelvin vector to a 3x3 matrix Only implementations for KelvinVectorSize 4 and 6 are provided.
Eigen::Matrix<double, Eigen::MatrixBase<Derived>::RowsAtCompileTime, 1> MathLib::KelvinVector::symmetricTensorToKelvinVector | ( | Eigen::MatrixBase< Derived > const & | v | ) |
Conversion of a short vector representation of a symmetric 3x3 matrix to a Kelvin vector.
This is opposite of the kelvinVectorToSymmetricTensor()
Only implementations for KelvinVectorSize 4 and 6, and dynamic size vectors are provided.
Definition at line 170 of file KelvinVector.h.
References OGS_FATAL.
Referenced by ProcessLib::HydroMechanics::HydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::initializeConcrete(), ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::initializeConcrete(), ProcessLib::SmallDeformation::SmallDeformationLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::initializeConcrete(), ProcessLib::TH2M::TH2MLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::initializeConcrete(), ProcessLib::ThermoHydroMechanics::ThermoHydroMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, IntegrationMethod, DisplacementDim >::initializeConcrete(), ProcessLib::ThermoMechanics::ThermoMechanicsLocalAssembler< ShapeFunction, IntegrationMethod, DisplacementDim >::initializeConcrete(), ProcessLib::ThermoRichardsMechanics::ThermoRichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunction, IntegrationMethod, DisplacementDim >::initializeConcrete(), ProcessLib::setIntegrationPointKelvinVectorData(), and symmetricTensorToKelvinVector().
KelvinVectorType<DisplacementDim> MathLib::KelvinVector::symmetricTensorToKelvinVector | ( | std::vector< double > const & | values | ) |
Conversion of a short vector representation of a symmetric 3x3 matrix to a Kelvin vector.
This overload takes a std::vector for the tensor values.
Definition at line 211 of file KelvinVector.h.
References kelvin_vector_dimensions(), OGS_FATAL, and symmetricTensorToKelvinVector().
KelvinVectorType<DisplacementDim> MathLib::KelvinVector::tensorToKelvin | ( | Eigen::Matrix< double, 3, 3 > const & | m | ) |
Conversion of a 3x3 matrix to a Kelvin vector. Only implementations for KelvinVectorSize 4 and 6 are provided.
KelvinVectorType<2> MathLib::KelvinVector::tensorToKelvin< 2 > | ( | Eigen::Matrix< double, 3, 3 > const & | m | ) |
Definition at line 85 of file KelvinVector.cpp.
KelvinVectorType<3> MathLib::KelvinVector::tensorToKelvin< 3 > | ( | Eigen::Matrix< double, 3, 3 > const & | m | ) |
Definition at line 85 of file KelvinVector.cpp.