LifeV
|
#include <DistributedHolzapfelMaterialNonLinear.hpp>
Protected Attributes | |
vectorPtr_Type | M_stiff |
construct the vectors for the parameters More... | |
matrixSmall_Type | M_identity |
Protected Attributes inherited from StructuralAnisotropicConstitutiveLaw< MeshType > | |
FESpacePtr_Type | M_dispFESpace |
construct the vectors for the parameters More... | |
ETFESpacePtr_Type | M_dispETFESpace |
std::shared_ptr< const MapEpetra > | M_localMap |
matrixPtr_Type | M_jacobian |
Matrix jacobian. More... | |
UInt | M_offset |
The Offset parameter. More... | |
dataPtr_Type | M_dataMaterial |
displayerPtr_Type | M_displayer |
vectorFiberFunctionPtr_Type | M_vectorOfFibers |
Map between markers and volumes on the mesh. More... | |
vectorInterpolatedFibers_Type | M_vectorInterpolated |
std::vector to store the vector of the interpolation of the fiber direction. More... | |
Real | M_epsilon |
Constructor & Destructor | |
DistributedHolzapfelMaterialNonLinear () | |
virtual | ~DistributedHolzapfelMaterialNonLinear () |
Methods | |
void | setup (const FESpacePtr_Type &dFESpace, const ETFESpacePtr_Type &dETFESpace, const std::shared_ptr< const MapEpetra > &monolithicMap, const UInt offset, const dataPtr_Type &dataMaterial) |
Setup the created object of the class StructuralIsotropicConstitutiveLaw. More... | |
void | computeLinearStiff (dataPtr_Type &, const mapMarkerVolumesPtr_Type, const mapMarkerIndexesPtr_Type) |
Compute the Stiffness matrix in StructuralSolver::buildSystem() More... | |
void | updateJacobianMatrix (const vector_Type &disp, const dataPtr_Type &dataMaterial, const mapMarkerVolumesPtr_Type mapsMarkerVolumes, const mapMarkerIndexesPtr_Type mapsMarkerIndexes, const displayerPtr_Type &displayer) |
Updates the Jacobian matrix in StructualSolver::updateJacobian. More... | |
void | updateNonLinearJacobianTerms (matrixPtr_Type &jacobian, const vector_Type &disp, const dataPtr_Type &dataMaterial, const mapMarkerVolumesPtr_Type, const mapMarkerIndexesPtr_Type, const displayerPtr_Type &displayer) |
Updates the nonlinear terms in the Jacobian matrix in StructualSolver::updateJacobian. More... | |
void | computeStiffness (const vector_Type &disp, const UInt iter, Real factor, const dataPtr_Type &dataMaterial, const mapMarkerVolumesPtr_Type, const mapMarkerIndexesPtr_Type, const displayerPtr_Type &displayer) |
Interface method to compute the new Stiffness matrix in StructuralSolver::evalResidual and in StructuralSolver::updateSystem since the matrix is the expression of the matrix is the same. More... | |
void | computeReferenceConfigurations (const vector_Type &disp, const dataPtr_Type &dataMaterial, const displayerPtr_Type &displayer) |
void | computeKinematicsVariables (const VectorElemental &dk_loc) |
Computes the new Stiffness vector for Neo-Hookean and Holzapfel materials in StructuralSolver given a certain displacement field. More... | |
void | showMe (std::string const &fileNameVectStiff, std::string const &fileNameJacobain) |
Computes the deformation Gradient F, the cofactor of F Cof(F), the determinant of F J = det(F), the trace of C Tr(C). More... | |
void | computeLocalFirstPiolaKirchhoffTensor (Epetra_SerialDenseMatrix &firstPiola, const Epetra_SerialDenseMatrix &tensorF, const Epetra_SerialDenseMatrix &cofactorF, const std::vector< Real > &invariants, const UInt marker) |
Compute the First Piola Kirchhoff Tensor. More... | |
void | computeCauchyStressTensor (const vectorPtr_Type disp, const QuadratureRule &evalQuad, vectorPtr_Type sigma_1, vectorPtr_Type sigma_2, vectorPtr_Type sigma_3) |
Compute the First Piola Kirchhoff Tensor. More... | |
void | setupFiberDirections (vectorFiberFunctionPtr_Type vectorOfFibers) |
void | evaluateActivationFibers (const vector_Type &displacement, vector_Type &fourthInvariant) |
Get Methods | |
matrixPtr_Type const | stiffMatrix () const |
Get the Stiffness matrix. More... | |
vectorPtr_Type const | stiffVector () const |
Get the stiffness vector. More... | |
vectorPtr_Type const | selectionCriterion (const UInt) const |
Specific for multimechanism. More... | |
vectorPtr_Type const | activationDisplacement (const UInt) const |
Get the activation displacement. More... | |
vectorPtr_Type const | activatedUnitFiber (const UInt) const |
Get the activation displacement. More... | |
vectorPtr_Type const | activatedDeterminant (const UInt) const |
Get the activation displacement. More... | |
void | apply (const vector_Type &sol, vector_Type &res, const mapMarkerVolumesPtr_Type mapsMarkerVolumes, const mapMarkerIndexesPtr_Type mapsMarkerIndexes, const displayerPtr_Type displayer) |
Definition at line 52 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 58 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::data_Type data_Type |
Definition at line 60 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::vector_Type vector_Type |
Definition at line 62 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::matrix_Type matrix_Type |
Definition at line 63 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::matrixPtr_Type matrixPtr_Type |
Definition at line 65 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::vectorPtr_Type vectorPtr_Type |
Definition at line 66 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::dataPtr_Type dataPtr_Type |
Definition at line 67 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 68 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 70 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 71 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef mapMarkerVolumes_Type::const_iterator mapIterator_Type |
Definition at line 72 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 74 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 75 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef mapMarkerIndexes_Type::const_iterator mapIteratorIndex_Type |
Definition at line 76 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef std::vector<typename MeshType::element_Type*> vectorVolumes_Type |
Definition at line 78 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef std::shared_ptr<vectorVolumes_Type> vectorVolumesPtr_Type |
Definition at line 79 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef std::vector<UInt> vectorIndexes_Type |
Definition at line 81 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef std::shared_ptr<vectorIndexes_Type> vectorIndexesPtr_Type |
Definition at line 82 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::FESpace_Type FESpace_Type |
Definition at line 84 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 85 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 86 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 89 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 90 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef MatrixSmall<3, 3> matrixSmall_Type |
Definition at line 92 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 94 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 95 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 97 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 98 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::tensorF_Type tensorF_Type |
Definition at line 102 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 103 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::tensorC_Type tensorC_Type |
Definition at line 104 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::minusT_Type minusT_Type |
Definition at line 105 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 106 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 107 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 108 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 111 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 112 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef super::stretch_Type stretch_Type |
Definition at line 113 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 114 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 117 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 118 of file DistributedHolzapfelMaterialNonLinear.hpp.
typedef ExpressionDistributedModel::linearizationDistributedStretch_Type derivativeDistrStretch_Type |
Definition at line 119 of file DistributedHolzapfelMaterialNonLinear.hpp.
Definition at line 353 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
virtual |
Definition at line 365 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
virtual |
Setup the created object of the class StructuralIsotropicConstitutiveLaw.
dFespace | the FiniteElement Space |
monolithicMap | the MapEpetra |
offset | the offset parameter used assembling the matrices |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 374 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
virtual |
Compute the Stiffness matrix in StructuralSolver::buildSystem()
dataMaterial | the class with Material properties data |
Empty method for exponential material
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 481 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
virtual |
Updates the Jacobian matrix in StructualSolver::updateJacobian.
disp | solution at the k-th iteration of NonLinearRichardson Method |
dataMaterial | a pointer to the dataType member in StructuralSolver class to get the material coefficients (e.g. Young modulus, Poisson ratio..) |
displayer | a pointer to the Dysplaier member in the StructuralSolver class |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 493 of file DistributedHolzapfelMaterialNonLinear.hpp.
void updateNonLinearJacobianTerms | ( | matrixPtr_Type & | jacobian, |
const vector_Type & | disp, | ||
const dataPtr_Type & | dataMaterial, | ||
const mapMarkerVolumesPtr_Type | mapsMarkerVolumes, | ||
const mapMarkerIndexesPtr_Type | mapsMarkerIndexes, | ||
const displayerPtr_Type & | displayer | ||
) |
Updates the nonlinear terms in the Jacobian matrix in StructualSolver::updateJacobian.
stiff | stiffness matrix provided from outside |
disp | solution at the k-th iteration of NonLinearRichardson Method |
dataMaterial | a pointer to the dataType member in StructuralSolver class to get the material coefficients (e.g. Young modulus, Poisson ratio..) |
displayer | a pointer to the Dysplaier member in the StructuralSolver class |
Definition at line 509 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
virtual |
Interface method to compute the new Stiffness matrix in StructuralSolver::evalResidual and in StructuralSolver::updateSystem since the matrix is the expression of the matrix is the same.
sol | the solution vector |
factor | scaling factor used in FSI |
dataMaterial | a pointer to the dataType member in StructuralSolver class to get the material coefficients (e.g. Young modulus, Poisson ratio..) |
displayer | a pointer to the Dysplaier member in the StructuralSolver class |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 654 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
inlinevirtual |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 206 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
inlinevirtual |
Computes the new Stiffness vector for Neo-Hookean and Holzapfel materials in StructuralSolver given a certain displacement field.
This function is used both in StructuralSolver::evalResidual and in StructuralSolver::updateSystem since the matrix is the expression of the matrix is the same.
sol | the solution vector |
factor | scaling factor used in FSI |
dataMaterial | a pointer to the dataType member in StructuralSolver class to get the material coefficients (e.g. Young modulus, Poisson ratio..) |
displayer | a pointer to the Dysplaier member in the StructuralSolver classComputes the deformation gradient F, the cofactor matrix Cof(F), the determinant of F (J = det(F)), the trace of right Cauchy-Green tensor tr(C) This function is used in StructuralIsotropicConstitutiveLaw::computeStiffness |
dk_loc | the elemental displacement |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 228 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
virtual |
Computes the deformation Gradient F, the cofactor of F Cof(F), the determinant of F J = det(F), the trace of C Tr(C).
dk_loc | local displacement vectorShowMe method of the class (saved on a file the stiffness vector and the jacobian) |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 761 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
virtual |
Compute the First Piola Kirchhoff Tensor.
firstPiola | Epetra_SerialDenseMatrix that has to be filled |
tensorF | Epetra_SerialDenseMatrix the deformation gradient |
cofactorF | Epetra_SerialDenseMatrix cofactor of F |
invariants | std::vector with the invariants of C and the detF |
material | UInt number to get the material parameteres form the VenantElasticData class |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 781 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
virtual |
Compute the First Piola Kirchhoff Tensor.
disp | the displacement field from which we compute the fisrt piola-Kirchhoff tensor |
sigma_1 | the first column of the Cauchy stress tensor |
sigma_2 | the second column of the Cauchy stress tensor |
sigma_3 | the third column of the Cauchy stress tensor |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 792 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
virtual |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 445 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
inlinevirtual |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 273 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
inlinevirtual |
Get the Stiffness matrix.
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 281 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
inlinevirtual |
Get the stiffness vector.
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 288 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
inlinevirtual |
Specific for multimechanism.
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 294 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
inlinevirtual |
Get the activation displacement.
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 301 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
inlinevirtual |
Get the activation displacement.
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 307 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
inlinevirtual |
Get the activation displacement.
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 313 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
virtual |
Implements StructuralAnisotropicConstitutiveLaw< MeshType >.
Definition at line 770 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
protected |
construct the vectors for the parameters
VOID |
Definition at line 341 of file DistributedHolzapfelMaterialNonLinear.hpp.
|
protected |
Definition at line 344 of file DistributedHolzapfelMaterialNonLinear.hpp.