G+Smo
24.08.0
Geometry + Simulation Modules
|
This class defines the base class for material matrices.
T | Real type |
Public Types | |
typedef memory::shared_ptr < gsMaterialMatrixBase > | Ptr |
Shared pointer for gsGeometry. | |
typedef memory::unique_ptr < gsMaterialMatrixBase > | uPtr |
Unique pointer for gsGeometry. | |
Public Member Functions | |
virtual void | defaultOptions () |
Returns the options. More... | |
virtual void | density_into (const index_t patch, const gsMatrix< T > &u, gsMatrix< T > &result) const |
Evaluates the density multiplied by the thickness of the shell (scalar) More... | |
virtual gsMatrix< T > | eval3D_CauchyStress (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z, enum MaterialOutput out) const |
{ function_description } More... | |
virtual gsMatrix< T > | eval3D_CauchyVector (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z, enum MaterialOutput out) const |
Evaluates the Cauchy Stress vector on patch on in-plane points u with height z. More... | |
virtual gsMatrix< T > | eval3D_con2cart (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
Provides the transformation from the contravariant basis to the local cartesian basis. More... | |
virtual gsMatrix< T > | eval3D_cov2cart (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
Provides the transformation from the covariant basis to the local cartesian basis. More... | |
virtual gsMatrix< T > | eval3D_deformation (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
Evaluates deformation tensor on patch on in-plane points u with height z. More... | |
virtual gsMatrix< T > | eval3D_detF (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z, enum MaterialOutput out) const |
{ function_description } More... | |
virtual gsMatrix< T > | eval3D_dmatrix (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z, enum MaterialOutput out) const |
Evaluates the derivative of the matrix on patch on in-plane points u with height z. More... | |
virtual gsMatrix< T > | eval3D_matrix (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z, enum MaterialOutput out) const |
Evaluates the matrix on patch on in-plane points u with height z. More... | |
virtual gsMatrix< T > | eval3D_pstrain (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
Evaluates the principal strain on patch on in-plane points u with height z. More... | |
virtual gsMatrix< T > | eval3D_pstress (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z, enum MaterialOutput out) const |
Evaluates the principal stress on patch on in-plane points u with height z. More... | |
virtual gsMatrix< T > | eval3D_pstressDir (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z, enum MaterialOutput out) const |
Evaluates the principal stress directions on patch on in-plane points u with height z. More... | |
virtual gsMatrix< T > | eval3D_pstressTransform (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
Provides the transformation of the principle stresses. More... | |
virtual gsMatrix< T > | eval3D_pstretch (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
Evaluates the principal stretch on patch on in-plane points u with height z. More... | |
virtual gsMatrix< T > | eval3D_pstretchDir (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
Evaluates the principal stretch directions on patch on in-plane points u with height z. More... | |
virtual gsMatrix< T > | eval3D_pstretchTransform (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
Provides the transformation of the principle stretches. More... | |
virtual gsMatrix< T > | eval3D_spec2con (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
Provides the transformation from the spectral basis to the contravariant basis. More... | |
virtual gsMatrix< T > | eval3D_spec2cov (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
Provides the transformation from the spectral basis to the covariant basis. More... | |
virtual gsMatrix< T > | eval3D_strain (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z) const |
{ function_description } More... | |
virtual gsMatrix< T > | eval3D_stress (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z, enum MaterialOutput out) const |
{ function_description } More... | |
virtual gsMatrix< T > | eval3D_tensionfield (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z, enum MaterialOutput out) const |
to do More... | |
virtual gsMatrix< T > | eval3D_vector (const index_t patch, const gsMatrix< T > &u, const gsMatrix< T > &z, enum MaterialOutput out) const |
Evaluates the vector on patch on in-plane points u with height z. More... | |
virtual const function_ptr | getDensity () const |
Gets the Density. | |
virtual const function_ptr | getParameter (const index_t i) const |
Gets parameter i. More... | |
virtual const function_ptr | getThickness () const |
Gets the Density. | |
gsMaterialMatrixBase (const gsMaterialMatrixBase< T > &other) | |
Copy constructor (makes deep copy) | |
gsMaterialMatrixBase (gsMaterialMatrixBase< T > &&other) | |
Move constructor. | |
virtual bool | hasDensity () const |
Returns true if a density is assigned. | |
virtual bool | hasThickness () const |
Returns true if a thickness is assigned. | |
virtual void | info () const |
Prints info. | |
virtual enum MatIntegration | isMatIntegrated () const |
Specifies how the matrix is integrated. More... | |
virtual enum MatIntegration | isVecIntegrated () const |
Specifies how the vector is integrated. More... | |
virtual const gsMaterialMatrixBase< T > * | material () const |
Returns this. | |
virtual gsMaterialMatrixBase< T > * | material () |
Returns this. | |
virtual index_t | numParameters () const |
Gets the number of parameters. | |
virtual gsOptionList & | options () |
Returns the options. More... | |
virtual void | parameters_into (const index_t patch, const gsMatrix< T > &u, gsMatrix< T > &result) const |
Evaluates the parameters of the shell. More... | |
virtual std::ostream & | print (std::ostream &os) const |
Prints the object as a string. | |
virtual void | pstress_into (const index_t patch, const gsMatrix< T > &u, gsMatrix< T > &result) const |
Evaluates the priciple stresses in the shell (3x1 vector) More... | |
virtual void | pstressDir_into (const index_t patch, const gsMatrix< T > &u, gsMatrix< T > &result) const |
Evaluates the directions of the priciple stresses in the shell (3x1 vector per direction) More... | |
virtual void | pstretch_into (const index_t patch, const gsMatrix< T > &u, gsMatrix< T > &result) const |
Evaluates the stretches in the shell (3x1 vector) More... | |
virtual void | pstretchDir_into (const index_t patch, const gsMatrix< T > &u, gsMatrix< T > &result) const |
Evaluates the directions of the stretches in the shell (3x1 vector per direction) More... | |
virtual void | resetParameters () |
See gsMaterialMatrixBase for details. | |
virtual void | setDensity (function_ptr Density) |
Sets the density. | |
virtual void | setDensity (const gsFunctionSet< T > &Density) |
Sets the density. | |
virtual void | setOptions (gsOptionList opt) |
Sets the options. More... | |
virtual void | setParameter (const index_t i, const function_ptr &par) |
Sets the material parameters. More... | |
virtual void | setParameter (const index_t i, const gsFunctionSet< T > &par) |
Sets the material parameters. More... | |
virtual void | setParameters (const std::vector< function_ptr > &pars) |
Sets the material parameters. More... | |
virtual void | setParameters (const std::vector< gsFunctionSet< T > * > &pars) |
Sets the material parameters. More... | |
virtual void | setThickness (const function_ptr &thickness) |
Sets the thickness. | |
virtual void | setThickness (const gsFunctionSet< T > &thickness) |
Sets the thickness. | |
virtual void | thickness_into (const index_t patch, const gsMatrix< T > &u, gsMatrix< T > &result) const |
Evaluates the thickness of the shell (scalar) More... | |
virtual void | transform_into (const index_t patch, const gsMatrix< T > &u, gsMatrix< T > &result) const |
Constructs a transformation matrix that transforms a quantity (IN VOIGHT NOTATION) in the spectral basis to the (undeformed) convariant basis. More... | |
virtual | ~gsMaterialMatrixBase () |
Destructor. | |
|
inlinevirtual |
Returns the options.
Reimplemented in gsMaterialMatrixLinear< dim, T >, gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >, and gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
Evaluates the density multiplied by the thickness of the shell (scalar)
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
result | The result |
Reimplemented in gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, gsMaterialMatrixBaseDim< dim, T >, and gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
{ function_description }
[in] | patch | The patch |
[in] | u | { parameter_description } |
[in] | z | { parameter_description } |
[in] | out | The out |
Reimplemented in gsMaterialMatrixLinear< dim, T >, gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >, gsMaterialMatrixTFT< dim, T, linear >, and gsMaterialMatrixTFT< 2, T >.
|
inlinevirtual |
Evaluates the Cauchy Stress vector on patch on in-plane points u with height z.
note: the Cauchy stress vector is returned in the actual basis
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
Reimplemented in gsMaterialMatrixLinear< dim, T >, and gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >.
|
inlinevirtual |
Provides the transformation from the contravariant basis to the local cartesian basis.
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
Reimplemented in gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
Provides the transformation from the covariant basis to the local cartesian basis.
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
result | The result |
Reimplemented in gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
Evaluates deformation tensor on patch on in-plane points u with height z.
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
Reimplemented in gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
{ function_description }
[in] | patch | The patch |
[in] | u | { parameter_description } |
[in] | z | { parameter_description } |
[in] | out | The out |
Reimplemented in gsMaterialMatrixLinear< dim, T >, and gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >.
|
inlinevirtual |
Evaluates the derivative of the matrix on patch on in-plane points u with height z.
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
dC = eval.reshapeCol(k,9,3); dCd11 = dC.reshapeCol(0,3,3); dCd22 = dC.reshapeCol(1,3,3); dCd11 = dC.reshapeCol(2,3,3);
Reimplemented in gsMaterialMatrixLinear< dim, T >, and gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >.
|
inlinevirtual |
Evaluates the matrix on patch on in-plane points u with height z.
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
Reimplemented in gsMaterialMatrixLinear< dim, T >, gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >, gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, and gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
Evaluates the principal strain on patch on in-plane points u with height z.
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
Reimplemented in gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, and gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
Evaluates the principal stress on patch on in-plane points u with height z.
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
Reimplemented in gsMaterialMatrixLinear< dim, T >, gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >, gsMaterialMatrixTFT< dim, T, linear >, and gsMaterialMatrixTFT< 2, T >.
|
inlinevirtual |
Evaluates the principal stress directions on patch on in-plane points u with height z.
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
Reimplemented in gsMaterialMatrixLinear< dim, T >, and gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >.
|
inlinevirtual |
Provides the transformation of the principle stresses.
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
|
inlinevirtual |
Evaluates the principal stretch on patch on in-plane points u with height z.
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
Reimplemented in gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, and gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
Evaluates the principal stretch directions on patch on in-plane points u with height z.
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
Reimplemented in gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, and gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
Provides the transformation of the principle stretches.
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
|
inlinevirtual |
Provides the transformation from the spectral basis to the contravariant basis.
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
Reimplemented in gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
Provides the transformation from the spectral basis to the covariant basis.
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
result | The result |
Reimplemented in gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
{ function_description }
[in] | patch | The patch |
[in] | u | { parameter_description } |
[in] | z | { parameter_description } |
[in] | out | The out |
Reimplemented in gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, and gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
{ function_description }
[in] | patch | The patch |
[in] | u | { parameter_description } |
[in] | z | { parameter_description } |
[in] | out | The out |
Reimplemented in gsMaterialMatrixLinear< dim, T >, gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >, gsMaterialMatrixTFT< dim, T, linear >, and gsMaterialMatrixTFT< 2, T >.
|
inlinevirtual |
to do
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
Reimplemented in gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, and gsMaterialMatrixBaseDim< dim, T >.
|
inlinevirtual |
Evaluates the vector on patch on in-plane points u with height z.
[in] | patch | The patch |
[in] | u | The in-plane shell coordinates to be eveluated on |
[in] | z | The point through-thickness coorinate |
[in] | out | (for classes with MatIntegration==Integrated, more details about MaterialOutput can be found in gsMaterialMatrixUtils) |
Reimplemented in gsMaterialMatrixLinear< dim, T >, gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >, gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, and gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
Gets parameter i.
[in] | i | The parameter index |
|
inlinevirtual |
Specifies how the matrix is integrated.
Possible options to specify the integration of the matrix (see enum MatIntegration)
Reimplemented in gsMaterialMatrixLinear< dim, T >, gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >, gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, and gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
Specifies how the vector is integrated.
Possible options to specify the integration of the vector (see enum MatIntegration)
Reimplemented in gsMaterialMatrixLinear< dim, T >, gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >, gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, and gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
|
inlinevirtual |
Evaluates the parameters of the shell.
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
result | The result |
Reimplemented in gsMaterialMatrixBaseDim< dim, T >, and gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
Evaluates the priciple stresses in the shell (3x1 vector)
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
result | The result |
Reimplemented in gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
Evaluates the directions of the priciple stresses in the shell (3x1 vector per direction)
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
result | The result |
Reimplemented in gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
Evaluates the stretches in the shell (3x1 vector)
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
result | The result |
Reimplemented in gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >, and gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
Evaluates the directions of the stretches in the shell (3x1 vector per direction)
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
result | The result |
Reimplemented in gsMaterialMatrixNonlinear< dim, T, matId, comp, mat, imp >, and gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
Sets the options.
[in] | opt | gsOptionList |
Reimplemented in gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
Sets the material parameters.
[in] | pars | Function pointers for the parameters in a container |
|
inlinevirtual |
Sets the material parameters.
[in] | pars | Function pointers for the parameters in a container |
|
inlinevirtual |
Sets the material parameters.
[in] | pars | Function pointers for the parameters in a container |
|
inlinevirtual |
Sets the material parameters.
[in] | pars | Function pointers for the parameters in a container |
Reimplemented in gsMaterialMatrixTFT< dim, T, linear >, and gsMaterialMatrixTFT< 2, T >.
|
inlinevirtual |
Evaluates the thickness of the shell (scalar)
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
result | The result |
Reimplemented in gsMaterialMatrixTFT< dim, T, linear >, gsMaterialMatrixTFT< 2, T >, gsMaterialMatrixBaseDim< dim, T >, and gsMaterialMatrixComposite< dim, T >.
|
inlinevirtual |
Constructs a transformation matrix that transforms a quantity (IN VOIGHT NOTATION) in the spectral basis to the (undeformed) convariant basis.
[in] | patch | The patch to be evaluated on |
[in] | u | The in-plane shell coordinates to be eveluated on |
result | The result |
Reimplemented in gsMaterialMatrixComposite< dim, T >.