LifeV
|
#include <ExponentialMaterialNonLinear.hpp>
Protected Member Functions | |
void | setupVectorsParameters (void) |
construct the vectors for the parameters More... | |
Protected Attributes | |
vectorPtr_Type | M_stiff |
Vector: stiffness non-linear. More... | |
matrixSmall_Type | M_identity |
Protected Attributes inherited from StructuralIsotropicConstitutiveLaw< MeshType > | |
dataPtr_Type | M_dataMaterial |
Protected Members. More... | |
FESpacePtr_Type | M_dispFESpace |
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... | |
vectorsParametersPtr_Type | M_vectorsParameters |
Map between markers and volumes on the mesh. More... | |
Constructor & Destructor | |
ExponentialMaterialNonLinear () | |
virtual | ~ExponentialMaterialNonLinear () |
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, 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 | computeKinematicsVariables (const VectorElemental &dk_loc) |
Computes the new Stiffness vector for Neo-Hookean and Exponential 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... | |
Get Methods | |
matrixPtr_Type const | stiffMatrix () const |
Get the Stiffness matrix. More... | |
vectorPtr_Type const | stiffVector () const |
Get the stiffness vector. 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 50 of file ExponentialMaterialNonLinear.hpp.
Definition at line 56 of file ExponentialMaterialNonLinear.hpp.
typedef super::data_Type data_Type |
Definition at line 58 of file ExponentialMaterialNonLinear.hpp.
typedef super::vector_Type vector_Type |
Definition at line 60 of file ExponentialMaterialNonLinear.hpp.
typedef super::matrix_Type matrix_Type |
Definition at line 61 of file ExponentialMaterialNonLinear.hpp.
typedef super::matrixPtr_Type matrixPtr_Type |
Definition at line 63 of file ExponentialMaterialNonLinear.hpp.
typedef super::vectorPtr_Type vectorPtr_Type |
Definition at line 64 of file ExponentialMaterialNonLinear.hpp.
typedef super::dataPtr_Type dataPtr_Type |
Definition at line 65 of file ExponentialMaterialNonLinear.hpp.
Definition at line 66 of file ExponentialMaterialNonLinear.hpp.
Definition at line 68 of file ExponentialMaterialNonLinear.hpp.
Definition at line 69 of file ExponentialMaterialNonLinear.hpp.
typedef mapMarkerVolumes_Type::const_iterator mapIterator_Type |
Definition at line 70 of file ExponentialMaterialNonLinear.hpp.
Definition at line 72 of file ExponentialMaterialNonLinear.hpp.
Definition at line 73 of file ExponentialMaterialNonLinear.hpp.
typedef mapMarkerIndexes_Type::const_iterator mapIteratorIndex_Type |
Definition at line 74 of file ExponentialMaterialNonLinear.hpp.
typedef std::vector<typename MeshType::element_Type*> vectorVolumes_Type |
Definition at line 76 of file ExponentialMaterialNonLinear.hpp.
typedef std::shared_ptr<vectorVolumes_Type> vectorVolumesPtr_Type |
Definition at line 77 of file ExponentialMaterialNonLinear.hpp.
typedef std::vector<UInt> vectorIndexes_Type |
Definition at line 79 of file ExponentialMaterialNonLinear.hpp.
typedef std::shared_ptr<vectorIndexes_Type> vectorIndexesPtr_Type |
Definition at line 80 of file ExponentialMaterialNonLinear.hpp.
Definition at line 82 of file ExponentialMaterialNonLinear.hpp.
Definition at line 83 of file ExponentialMaterialNonLinear.hpp.
Definition at line 86 of file ExponentialMaterialNonLinear.hpp.
Definition at line 87 of file ExponentialMaterialNonLinear.hpp.
typedef MatrixSmall<3, 3> matrixSmall_Type |
Definition at line 89 of file ExponentialMaterialNonLinear.hpp.
typedef super::tensorF_Type tensorF_Type |
Definition at line 92 of file ExponentialMaterialNonLinear.hpp.
Definition at line 93 of file ExponentialMaterialNonLinear.hpp.
typedef super::tensorC_Type tensorC_Type |
Definition at line 94 of file ExponentialMaterialNonLinear.hpp.
typedef super::minusT_Type minusT_Type |
Definition at line 95 of file ExponentialMaterialNonLinear.hpp.
Definition at line 96 of file ExponentialMaterialNonLinear.hpp.
Definition at line 296 of file ExponentialMaterialNonLinear.hpp.
|
virtual |
Definition at line 308 of file ExponentialMaterialNonLinear.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 StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 317 of file ExponentialMaterialNonLinear.hpp.
|
virtual |
Compute the Stiffness matrix in StructuralSolver::buildSystem()
dataMaterial | the class with Material properties data |
Empty method for exponential material
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 392 of file ExponentialMaterialNonLinear.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 StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 404 of file ExponentialMaterialNonLinear.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 |
Nonlinear part of jacobian loop on volumes (i)
Definition at line 419 of file ExponentialMaterialNonLinear.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 StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 565 of file ExponentialMaterialNonLinear.hpp.
|
inlinevirtual |
Computes the new Stiffness vector for Neo-Hookean and Exponential 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 StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 205 of file ExponentialMaterialNonLinear.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 StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 649 of file ExponentialMaterialNonLinear.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 StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 668 of file ExponentialMaterialNonLinear.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 StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 711 of file ExponentialMaterialNonLinear.hpp.
|
inlinevirtual |
Get the Stiffness matrix.
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 252 of file ExponentialMaterialNonLinear.hpp.
|
inlinevirtual |
Get the stiffness vector.
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 259 of file ExponentialMaterialNonLinear.hpp.
|
virtual |
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 658 of file ExponentialMaterialNonLinear.hpp.
|
protectedvirtual |
construct the vectors for the parameters
VOID |
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 354 of file ExponentialMaterialNonLinear.hpp.
|
protected |
Vector: stiffness non-linear.
Definition at line 284 of file ExponentialMaterialNonLinear.hpp.
|
protected |
Definition at line 287 of file ExponentialMaterialNonLinear.hpp.