mpacts.contact.models.collision.linearpressure. linearpressure_massstiffness

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

import mpacts.contact.models.collision.linearpressure.linearpressure_massstiffness
#or assign it to a shorter name
import mpacts.contact.models.collision.linearpressure.linearpressure_massstiffness as lin

BarycentricSpringContactMatrix

Description: Barycentric contact springs. Geometry combinations available:

PC2 | PC1 - Rigid_Triangle Deformable_Triangle Deformable_RoundedTriangle
Sphere YES YES YES

BarycentricSpringContactMatrix (Deformable_RoundedTriangle Sphere)

Barycentric contact springs.

Parallel Compatible: No

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d0 (default value = 0) — optional equilibrium distance. If < 0, the distance at initialization will be used.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized, with their rest length at the current length
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.
  • Read only properties:
    • n_bonds — Total number of bonds initialized at this point. Not yet parallel compatible info

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataDeformable_NGon_1_Data  <3 >
  ↓
NGon_PointBarycentricSpringStoreLatestContactIndexN_T_AreaWeightedResistanceSpringStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedDeformableTriangleBarycentricDof_1SphereDof_2AssembleContactMatrix_BarycentricStiffnessMatrixCorrectionForceAssembleForces_DeformableTriangleBarycentric_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

BarycentricSpringContactMatrix (Deformable_Triangle Sphere)

Barycentric contact springs.

Parallel Compatible: No

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d0 (default value = 0) — optional equilibrium distance. If < 0, the distance at initialization will be used.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized, with their rest length at the current length
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.
  • Read only properties:
    • n_bonds — Total number of bonds initialized at this point. Not yet parallel compatible info

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataDeformable_NGon_1_Data  <3 >
  ↓
NGon_PointBarycentricSpringStoreLatestContactIndexN_T_AreaWeightedResistanceSpringStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedDeformableTriangleBarycentricDof_1SphereDof_2AssembleContactMatrix_BarycentricStiffnessMatrixCorrectionForceAssembleForces_DeformableTriangleBarycentric_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

BarycentricSpringContactMatrix (Rigid_Triangle Sphere)

Barycentric contact springs.

Parallel Compatible: No

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • d0 (default value = 0) — optional equilibrium distance. If < 0, the distance at initialization will be used.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized, with their rest length at the current length
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
  • Read only properties:
    • n_bonds — Total number of bonds initialized at this point. Not yet parallel compatible info

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataRigid_NGon_1_Data  <3 >
  ↓
NGon_PointBarycentricSpringStoreLatestContactIndexN_T_AreaWeightedResistanceSpringStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedRigidBodyDof_1SphereDof_2AssembleContactMatrixToDiagonal_2StiffnessMatrixCorrectionForceAssembleMoments_1AssembleForces_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

LinearNormalPressureContactMatrix

Description: First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies Geometry combinations available:

PC2 | PC1 - Rigid_Triangle Rigid_Quad Rigid_Cylinder Deformable_Triangle Deformable_RoundedTriangle
Sphere YES YES YES YES YES

LinearNormalPressureContactMatrix (Deformable_RoundedTriangle Sphere)

First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies

Parallel Compatible: Yes

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • rest_distance (default value = 0) — Resting length of newly created bonds. If not set or -1, the current instantaneous bond length will be used
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataDeformable_NGon_1_Data  <3 >
  ↓
NGon_PointLinearNodePressureN_T_AreaWeightedResistanceN_ConstantStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedDeformableTriangleBarycentricDof_1SphereDof_2AssembleContactMatrix_ComposedParticleNormalStiffnessMatrixCorrectionForceAssembleForces_DeformableTriangleBarycentric_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

LinearNormalPressureContactMatrix (Deformable_Triangle Sphere)

First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies

Parallel Compatible: Yes

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • rest_distance (default value = 0) — Resting length of newly created bonds. If not set or -1, the current instantaneous bond length will be used
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataDeformable_NGon_1_Data  <3 >
  ↓
NGon_PointLinearNodePressureN_T_AreaWeightedResistanceN_ConstantStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedDeformableTriangleBarycentricDof_1SphereDof_2AssembleContactMatrix_ComposedParticleNormalStiffnessMatrixCorrectionForceAssembleForces_DeformableTriangleBarycentric_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

LinearNormalPressureContactMatrix (Rigid_Cylinder Sphere)

First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies

Parallel Compatible: Yes

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • rest_distance (default value = 0) — Resting length of newly created bonds. If not set or -1, the current instantaneous bond length will be used
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataRigid_Cylinder_1_DataCylinder_PointLinearNodePressureN_T_AreaWeightedResistanceN_ConstantStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedRigidBodyDof_1SphereDof_2AssembleContactMatrix_ComposedParticleNormalStiffnessMatrixCorrectionForceAssembleMoments_1AssembleForces_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

LinearNormalPressureContactMatrix (Rigid_Quad Sphere)

First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies

Parallel Compatible: Yes

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • rest_distance (default value = 0) — Resting length of newly created bonds. If not set or -1, the current instantaneous bond length will be used
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataRigid_NGon_1_Data  <4 >
  ↓
NGon_PointLinearNodePressureN_T_AreaWeightedResistanceN_ConstantStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedRigidBodyDof_1SphereDof_2AssembleContactMatrix_ComposedParticleNormalStiffnessMatrixCorrectionForceAssembleMoments_1AssembleForces_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

LinearNormalPressureContactMatrix (Rigid_Triangle Sphere)

First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies

Parallel Compatible: Yes

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • rest_distance (default value = 0) — Resting length of newly created bonds. If not set or -1, the current instantaneous bond length will be used
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataRigid_NGon_1_Data  <3 >
  ↓
NGon_PointLinearNodePressureN_T_AreaWeightedResistanceN_ConstantStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedRigidBodyDof_1SphereDof_2AssembleContactMatrix_ComposedParticleNormalStiffnessMatrixCorrectionForceAssembleMoments_1AssembleForces_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

LinearPressureContactMatrix

Description: First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies Geometry combinations available:

PC2 | PC1 - Rigid_Triangle Rigid_Quad Rigid_Cylinder Deformable_Triangle Deformable_RoundedTriangle
Sphere YES YES YES YES YES

LinearPressureContactMatrix (Deformable_RoundedTriangle Sphere)

First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies

Parallel Compatible: No

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • d_t_max (default value = 1.3407806589161803e+154) — Maximal (positive) tangential separation distance [m] beyond which the contact will be released.
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • rest_distance (default value = 0) — Resting length of newly created bonds. If not set or -1, the current instantaneous bond length will be used
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataDeformable_NGon_1_Data  <3 >
  ↓
NGon_PointLinearNodePressureT_TangentialSpringStoreLatestContactIndexN_T_AreaWeightedResistanceN_T_ConstantStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedDeformableTriangleBarycentricDof_1SphereDof_2AssembleContactMatrix_ComposedParticleNormalStiffnessMatrixCorrectionForceAssembleForces_DeformableTriangleBarycentric_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

LinearPressureContactMatrix (Deformable_Triangle Sphere)

First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies

Parallel Compatible: No

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • d_t_max (default value = 1.3407806589161803e+154) — Maximal (positive) tangential separation distance [m] beyond which the contact will be released.
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • rest_distance (default value = 0) — Resting length of newly created bonds. If not set or -1, the current instantaneous bond length will be used
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataDeformable_NGon_1_Data  <3 >
  ↓
NGon_PointLinearNodePressureT_TangentialSpringStoreLatestContactIndexN_T_AreaWeightedResistanceN_T_ConstantStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedDeformableTriangleBarycentricDof_1SphereDof_2AssembleContactMatrix_ComposedParticleNormalStiffnessMatrixCorrectionForceAssembleForces_DeformableTriangleBarycentric_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

LinearPressureContactMatrix (Rigid_Cylinder Sphere)

First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies

Parallel Compatible: No

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • d_t_max (default value = 1.3407806589161803e+154) — Maximal (positive) tangential separation distance [m] beyond which the contact will be released.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • rest_distance (default value = 0) — Resting length of newly created bonds. If not set or -1, the current instantaneous bond length will be used
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataRigid_Cylinder_1_DataCylinder_PointLinearNodePressureT_TangentialSpringStoreLatestContactIndexN_T_AreaWeightedResistanceN_T_ConstantStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedRigidBodyDof_1SphereDof_2AssembleContactMatrix_ComposedParticleNormalStiffnessMatrixCorrectionForceAssembleMoments_1AssembleForces_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

LinearPressureContactMatrix (Rigid_Quad Sphere)

First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies

Parallel Compatible: No

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • d_t_max (default value = 1.3407806589161803e+154) — Maximal (positive) tangential separation distance [m] beyond which the contact will be released.
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • rest_distance (default value = 0) — Resting length of newly created bonds. If not set or -1, the current instantaneous bond length will be used
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataRigid_NGon_1_Data  <4 >
  ↓
NGon_PointLinearNodePressureT_TangentialSpringStoreLatestContactIndexN_T_AreaWeightedResistanceN_T_ConstantStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedRigidBodyDof_1SphereDof_2AssembleContactMatrix_ComposedParticleNormalStiffnessMatrixCorrectionForceAssembleMoments_1AssembleForces_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts

LinearPressureContactMatrix (Rigid_Triangle Sphere)

First contact model for mass stiffness matrix, in which we compute seperate contact between ‘nodes’ and n-gons of the respective bodies

Parallel Compatible: No

Properties:

  • Required keywords:
    • gamma_normal (kg . s^-1 . m^-2) — Normal friction coefficient (Pa*s/m)
    • gamma_tangential (kg . s^-1 . m^-2) — Tangential friction coefficient (Pa*s/m)
    • k — Linear layer stiffnes [Pa/m]. Note that k_layer = bulk modulus / layer thickness
    • 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!
    • abort_if_different (default value = 0) — If ‘True’, inverts the regular function of ‘AbortIfSameParent’, and makes the contact model early abort if the particles’ parents are different. Please do not change this ‘Property’ if you are not sure what you are doing.
    • brittle_fracture (default value = 0) — If ‘True’, new bonds are only formed if ‘init_bonds’ is True
    • contact_data_storage_factory (default value = None) — The contact data storage factory to make contact data. Do not change! Especially vector in parallel is not a safe choice here.
    • contact_data (default value = None) — The contact data belonging to the DoF (parents) made by this model.
    • d_max (default value = 0) — Maximal (positive) separation distance [m] beyond which the contact will be released.
    • d_snap (default value = 0) — (Negative) overlap above which new bonds will ‘snap’ into contact (Default=0).
    • d_t_max (default value = 1.3407806589161803e+154) — Maximal (positive) tangential separation distance [m] beyond which the contact will be released.
    • flip_normals (default value = 0) — If ‘True’, the normals of the N-Gon will be flipped.In most cases, we recommend that you leave this option to its default ‘false’. Contrary to the option ‘flip_normals’ in e.g. Ngon-Sphere contact, this option will always flip the normals, if enables, since points do not have any radius.
    • implicitness (default value = 1) — Choose the semi-implicit integration method. (0 for explicit Euler, 1 for implicit Euler, 0.5 for Cranck-Nicholson).
    • init_bonds (default value = 1) — If ‘True’, the next execution bonds may be reinitialized
    • k_a (default value = -1) — Linear layer stiffnes for adhesion [Pa/m]. If not given, k_a = k
    • rest_distance (default value = 0) — Resting length of newly created bonds. If not set or -1, the current instantaneous bond length will be used
    • transpose (default value = 0) — switches around pc1 and pc2 for the ContactMatrix.

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

DefaultBoilerPlateContactMatrixDataBoilerPlateContactMatrixContactStateKeepTimeStepPoint_2_DataRigid_NGon_1_Data  <3 >
  ↓
NGon_PointLinearNodePressureT_TangentialSpringStoreLatestContactIndexN_T_AreaWeightedResistanceN_T_ConstantStiffnessFrictionMatrixForceComputeContactMatrixElementUnderdampedRigidBodyDof_1SphereDof_2AssembleContactMatrix_ComposedParticleNormalStiffnessMatrixCorrectionForceAssembleMoments_1AssembleForces_1AssembleForces_2Assemble_ContactArea_2AbortIfSameParentFeedbackKeepContacts