mpacts.contact.models.springs.elastic. mass_stiffness_matrix

In order to be able to use this module import it like this:

import mpacts.contact.models.springs.elastic.mass_stiffness_matrix
#or assign it to a shorter name
import mpacts.contact.models.springs.elastic.mass_stiffness_matrix as mas

HyperelasticBiphasicMassStiffnessMatrix

Description: Hyper-elastic biphasic spring-dampers in a second order semi-implicit scheme where an equation of motion M  ec{a} =  ec{F} is solved. The parameter implicitness allows for selecting between an explicit Euler, an implicit Euler or a Cranck-Nicholson scheme. Geometry combinations available:

PC2 | PC1 - Sphere
Sphere YES

HyperelasticBiphasicMassStiffnessMatrix (Sphere Sphere)

Hyper-elastic biphasic spring-dampers in a second order semi-implicit scheme where an equation of motion M  ec{a} =  ec{F} is solved. The parameter implicitness allows for selecting between an explicit Euler, an implicit Euler or a Cranck-Nicholson scheme.

Parallel Compatible: Yes

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1) — Viscous damping in the ‘in-plane’ direction (kg/s)
    • gamma_tangential (kg . s^-1) — Viscous damping in the ‘out-of-plane’ direction (kg/s)
    • k_compress — spring constant in compressive regime.
    • k_stretch — spring constant in extending regime.
    • pc1 — The first particle container in the binary contact detection.
    • pc2 — The second particle container in the binary contact detection. If contact detection within the same particle container is desired, and it is applicable for the contactmodel, pass the same pc to both pc1 and pc2.
  • Optional keywords:
    • A (default value = 0) — constant that determines how fast the stiffness drops in function of the maximum historical stretch ratio
    • B (default value = 0) — constant that determines how much the stiffness drops at large strains (B=0 means pure hyperelastic behaviour)
    • _contactmatrixdatatype (default value = 1) — Identifier that signals that this chain element’s containing contact model is a friction matrix type. Only change this if you really know what you are doing!
    • d0 (default value = -1) — optional equilibrium distance
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • s_max (default value = 1.7976931348623157e+308) — stretch at which spring will break, bringing forces to zero
    • thickness (default value = -1) — Do not provide this parameter anymore.

This contact model is composed out of following pieces (click on the chain elements to get more information):

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataPoint_1_DataPoint_PointHyperelasticBiphasicSpringN_T_MeshWeightedResistanceSpringStiffnessComputeContactMatrixElementUnderdampedStiffnessMatrixCorrectionForceFrictionMatrixForceAssembleContactMatrixAssembleForcesNoFeedback

LinearMassStiffnessMatrix

Description: Linear elastic spring-dampers in a second order semi-implicit scheme where an equation of motion M  ec{a} =  ec{F} is solved. The parameter implicitness allows for selecting between an explicit Euler, an implicit Euler or a Cranck-Nicholson scheme. Geometry combinations available:

PC2 | PC1 - Sphere
Sphere YES

LinearMassStiffnessMatrix (Sphere Sphere)

Linear elastic spring-dampers in a second order semi-implicit scheme where an equation of motion M  ec{a} =  ec{F} is solved. The parameter implicitness allows for selecting between an explicit Euler, an implicit Euler or a Cranck-Nicholson scheme.

Parallel Compatible: Yes

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1) — Normal friction coefficient (kg/s)
    • gamma_tangential (kg . s^-1) — Tangential friction coefficient (kg/s)
    • k_compress (kg . s^-2) — spring constant in compressive regime.
    • k_stretch (kg . s^-2) — spring constant in extending regime.
    • pc1 — The first particle container in the binary contact detection.
    • pc2 — The second particle container in the binary contact detection. If contact detection within the same particle container is desired, and it is applicable for the contactmodel, pass the same pc to both pc1 and pc2.
  • Optional keywords:
    • _contactmatrixdatatype (default value = 1) — Identifier that signals that this chain element’s containing contact model is a friction matrix type. Only change this if you really know what you are doing!
    • d0 (m) (default value = -1) — optional equilibrium distance
    • d_max (m) (default value = 1.7976931348623157e+308) — distance at which spring will break, bringing forces to zero
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).

This contact model is composed out of following pieces (click on the chain elements to get more information):

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataPoint_1_DataPoint_PointSpringN_T_ConstantResistanceSpringStiffnessComputeContactMatrixElementUnderdampedStiffnessMatrixCorrectionForceFrictionMatrixForceAssembleContactMatrixAssembleForcesNoFeedback

ShellHyperelasticBiphasicMatrix

Description: Spring-dampers that represent a hyperelastic biphasic and viscous thin shell, which is integrated in a second order semi-implicit scheme where an equation of motion M  ec{a} =  ec{F} is solved. The parameter implicitness allows for selecting between an explicit Euler, an implicit Euler or a Cranck-Nicholson scheme. Geometry combinations available:

PC2 | PC1 - Sphere
Sphere YES

ShellHyperelasticBiphasicMatrix (Sphere Sphere)

Spring-dampers that represent a hyperelastic biphasic and viscous thin shell, which is integrated in a second order semi-implicit scheme where an equation of motion M  ec{a} =  ec{F} is solved. The parameter implicitness allows for selecting between an explicit Euler, an implicit Euler or a Cranck-Nicholson scheme.

Parallel Compatible: Yes

Properties:

  • Required keywords:
    • E (kg . m^-1 . s^-2) — Young’s modulus of the elastic material from which the shell is composed
    • nu (1) — Poisson number of the elastic material from which the shell is composed. Warning: Currently only 1/3 is accepted as a valid value..
    • pc1 — The first particle container in the binary contact detection.
    • pc2 — The second particle container in the binary contact detection. If contact detection within the same particle container is desired, and it is applicable for the contactmodel, pass the same pc to both pc1 and pc2.
    • triangles — Array manager of triangles
    • viscosity (kg . m^-1 . s^-1) — Viscosity of the thin shell (Pa*s)
  • Optional keywords:
    • A (default value = 0) — constant that determines how fast the stiffness drops in function of the maximum historical stretch ratio
    • B (default value = 0) — constant that determines how much the stiffness drops at large strains (B=0 means pure hyperelastic behaviour)
    • _contactmatrixdatatype (default value = 1) — Identifier that signals that this chain element’s containing contact model is a friction matrix type. Only change this if you really know what you are doing!
    • d0 (default value = -1) — optional equilibrium distance
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • pre_factor (1) (default value = 0.57735026918962584) — Pre-factor to translate viscosity into a damping coefficient. For triangulated meshes, this should be 1./sqrt(3) (default). For quadrilateral meshes, this should be 1.
    • s_max (default value = 1.7976931348623157e+308) — stretch at which spring will break, bringing forces to zero
  • Read only properties:
    • gamma_normal — Viscous damping in the ‘in-plane’ direction (read-only)
    • gamma_tangential — Viscous damping in the ‘out-of-plane’ direction (read-only)
    • k_compress — spring constant in compressive regime.
    • k_stretch — spring constant in extending regime.

This contact model is composed out of following pieces (click on the chain elements to get more information):

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataPoint_1_DataNodeShellDataNode_Node_ShellHyperelasticBiphasicShellSpringN_T_ShellViscositySpringStiffnessComputeContactMatrixElementUnderdampedStiffnessMatrixCorrectionForceFrictionMatrixForceAssembleContactMatrixAssembleForcesAssemble_SpringTensionNoFeedback

ShellStiffnessMatrix

Description: Spring-dampers that represent a visco-elastic thin shell with a Young’s modulus and a thickness, which is integrated in a second order semi-implicit scheme where an equation of motion M  ec{a} =  ec{F} is solved. The parameter implicitness allows for selecting between an explicit Euler, an implicit Euler or a Cranck-Nicholson scheme. Geometry combinations available:

PC2 | PC1 - Sphere
Sphere YES

ShellStiffnessMatrix (Sphere Sphere)

Spring-dampers that represent a visco-elastic thin shell with a Young’s modulus and a thickness, which is integrated in a second order semi-implicit scheme where an equation of motion M  ec{a} =  ec{F} is solved. The parameter implicitness allows for selecting between an explicit Euler, an implicit Euler or a Cranck-Nicholson scheme.

Parallel Compatible: Yes

Properties:

  • Required keywords:
    • E (kg . m^-1 . s^-2) — Young’s modulus of the elastic material from which the shell is composed
    • nu (1) — Poisson number of the elastic material from which the shell is composed. Warning: Currently only 1/3 is accepted as a valid value..
    • pc1 — The first particle container in the binary contact detection.
    • pc2 — The second particle container in the binary contact detection. If contact detection within the same particle container is desired, and it is applicable for the contactmodel, pass the same pc to both pc1 and pc2.
    • triangles — Array manager of triangles
    • viscosity (kg . m^-1 . s^-1) — Viscosity of the thin shell (Pa*s)
  • Optional keywords:
    • _contactmatrixdatatype (default value = 1) — Identifier that signals that this chain element’s containing contact model is a friction matrix type. Only change this if you really know what you are doing!
    • d0 (m) (default value = -1) — optional equilibrium distance of the spring connections. If not given, the ‘current’ distance when the model is first executed will be used.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • pre_factor (1) (default value = 0.57735026918962584) — Pre-factor to translate viscosity into a damping coefficient. For triangulated meshes, this should be 1./sqrt(3) (default). For quadrilateral meshes, this should be 1.
  • Read only properties:
    • gamma_normal — Viscous damping in the ‘in-plane’ direction (read-only)
    • gamma_tangential — Viscous damping in the ‘out-of-plane’ direction (read-only)
    • k — spring stiffness, computed from E, area and thickness (read-only).

This contact model is composed out of following pieces (click on the chain elements to get more information):

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataPoint_1_DataNodeShellDataNode_Node_ShellElasticShellSpringN_T_ShellViscositySpringStiffnessComputeContactMatrixElementUnderdampedStiffnessMatrixCorrectionForceFrictionMatrixForceAssembleContactMatrixAssembleForcesAssemble_SpringTensionNoFeedback