LifeV
|
#include <NeoHookeanMaterialNonLinear.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 | |
NeoHookeanMaterialNonLinear () | |
virtual | ~NeoHookeanMaterialNonLinear () |
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) |
ShowMe method of the class (saved on a file the stiffness vector and the jacobian) 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 NeoHookeanMaterialNonLinear.hpp.
Definition at line 57 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 59 of file NeoHookeanMaterialNonLinear.hpp.
typedef super::vector_Type vector_Type |
Definition at line 61 of file NeoHookeanMaterialNonLinear.hpp.
typedef super::matrix_Type matrix_Type |
Definition at line 62 of file NeoHookeanMaterialNonLinear.hpp.
typedef super::matrixPtr_Type matrixPtr_Type |
Definition at line 64 of file NeoHookeanMaterialNonLinear.hpp.
typedef super::vectorPtr_Type vectorPtr_Type |
Definition at line 65 of file NeoHookeanMaterialNonLinear.hpp.
typedef super::dataPtr_Type dataPtr_Type |
Definition at line 66 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 67 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 69 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 70 of file NeoHookeanMaterialNonLinear.hpp.
typedef mapMarkerVolumes_Type::const_iterator mapIterator_Type |
Definition at line 71 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 73 of file NeoHookeanMaterialNonLinear.hpp.
typedef std::shared_ptr<vectorVolumes_Type> vectorVolumesPtr_Type |
Definition at line 74 of file NeoHookeanMaterialNonLinear.hpp.
typedef std::vector<UInt> vectorIndexes_Type |
Definition at line 76 of file NeoHookeanMaterialNonLinear.hpp.
typedef std::shared_ptr<vectorIndexes_Type> vectorIndexesPtr_Type |
Definition at line 77 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 79 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 80 of file NeoHookeanMaterialNonLinear.hpp.
typedef mapMarkerIndexes_Type::const_iterator mapIteratorIndex_Type |
Definition at line 81 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 83 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 84 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 87 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 88 of file NeoHookeanMaterialNonLinear.hpp.
typedef MatrixSmall<3, 3> matrixSmall_Type |
Definition at line 90 of file NeoHookeanMaterialNonLinear.hpp.
typedef super::tensorF_Type tensorF_Type |
Definition at line 93 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 94 of file NeoHookeanMaterialNonLinear.hpp.
typedef super::tensorC_Type tensorC_Type |
Definition at line 95 of file NeoHookeanMaterialNonLinear.hpp.
typedef super::minusT_Type minusT_Type |
Definition at line 96 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 97 of file NeoHookeanMaterialNonLinear.hpp.
Definition at line 279 of file NeoHookeanMaterialNonLinear.hpp.
|
virtual |
Definition at line 291 of file NeoHookeanMaterialNonLinear.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 300 of file NeoHookeanMaterialNonLinear.hpp.
|
virtual |
Compute the Stiffness matrix in StructuralSolver::buildSystem()
dataMaterial | the class with Material properties data |
Empty method for neo-hookean material
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 366 of file NeoHookeanMaterialNonLinear.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 375 of file NeoHookeanMaterialNonLinear.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 |
ISOCHORIC PART
Definition at line 390 of file NeoHookeanMaterialNonLinear.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 522 of file NeoHookeanMaterialNonLinear.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 201 of file NeoHookeanMaterialNonLinear.hpp.
|
virtual |
ShowMe method of the class (saved on a file the stiffness vector and the jacobian)
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 597 of file NeoHookeanMaterialNonLinear.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 605 of file NeoHookeanMaterialNonLinear.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 640 of file NeoHookeanMaterialNonLinear.hpp.
|
inlinevirtual |
Get the Stiffness matrix.
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 241 of file NeoHookeanMaterialNonLinear.hpp.
|
inlinevirtual |
Get the stiffness vector.
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 247 of file NeoHookeanMaterialNonLinear.hpp.
|
virtual |
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 511 of file NeoHookeanMaterialNonLinear.hpp.
|
protectedvirtual |
construct the vectors for the parameters
VOID |
Implements StructuralIsotropicConstitutiveLaw< MeshType >.
Definition at line 333 of file NeoHookeanMaterialNonLinear.hpp.
|
protected |
Vector: stiffness non-linear.
Definition at line 271 of file NeoHookeanMaterialNonLinear.hpp.
|
protected |
Definition at line 274 of file NeoHookeanMaterialNonLinear.hpp.