This page should grow to give overview of all constitutive laws in Yade. The purpose is twofold:
- Names of respective classes do not say much and it seems that lot of code is duplicated; should improve orientation in material models available
- Not all laws are in the same development stage. Some of them are well validated while others are purely experimental. Users should quickly find out which ones are safe to use in this table.
Please add what you know something about.
Constitutive laws
Class |
description |
dev. status |
validated |
publications |
example script |
maintainer(s)
|
Law2_ScGeom_FrictPhys_CundallStrack
|
The traditional Cundall's linear elastic-plastic law. This law has three parameters : tangential stiffness, normal stiffness, and friction coefficient - it modelizes dry contacts (no tensile force allowed). |
mature |
yes |
(>10 articles) e.g. Scholtes2009c |
triax-basic.py |
Bruno Chareyre
|
Law2_CylScGeom6D_CohFrictPhys_CohesionMoment
|
Similar to Law2_ScGeom6D_CohFrictPhys_CohesionMoment but adapted to interactions between spheres and chained cylinders. |
in development |
no |
not yet |
CohesiveCylinderSphere.py |
François Kneib, Bruno Chareyre
|
Law2_CylScGeom_FrictPhys_CundallStrack
|
Similar to Law2_ScGeom_FrictPhys_CundallStrack but adapted to interactions between spheres and chained cylinders. |
in development |
more or less |
not yet |
chained-cylinder-roots.py |
Bruno Chareyre, François Kneib
|
Law2_Dem3DofGeom_CpmPhys_Cpm
|
Law2_Dem3DofGeom_RockPMPhys_Rpm
|
Law2_L3Geom_FrictPhys_ElPerfPl
|
Law2_L6Geom_FrictPhys_Linear
|
Law2_ScGeom6D_CohFrictPhys_CohesionMoment
|
An augmented version of Law2_ScGeom_FrictPhys_CundallStrack with cohesion and torques at contacts. Creep is optional. |
mature |
yes |
not yet |
triax-cohesive.py |
Bruno Chareyre
|
Law2_ScGeom6D_NormalInelasticityPhys_NormalInelasticity
|
Law2_ScGeom_CFpmPhys_CohesiveFrictionalPM
|
Law2_ScGeom_CpmPhys_Cpm
|
Law2_ScGeom_MindlinPhys_HertzWithLinearShear
|
Law2_ScGeom_MindlinPhys_Mindlin
|
The non-linear elastic Hertz-Mindlin no-slip solution contact law. The law also allows for rolling resistance and non-linear viscous damping. |
mature |
yes |
Modenese2012b |
mindlin.py |
Chiara Modenese
|
Law2_ScGeom_MindlinPhys_MindlinDeresiewitz
|
Law2_ScGeom_ViscElPhys_Basic
|
Law2_ScGeom_ViscoFrictPhys_CundallStrack
|
Generalized Maxwell model of visco-elasto-plastic interactions (2 springs and 2 dashpots for each force component). |
in development |
no |
|
- |
Bruno Chareyre
|
Law2_ScGeom_WirePhys_WirePM
|
A contact law for steel wires which is defined by a piece-wise linear stress-strain curve. The contact law considers tensile forces only. |
mature |
yes |
Thoeni2011, Bertrand2008 |
WireMatPM/wirecontacttest.py WireMatPM/wiretensiltest.py |
Klaus Thoeni
|
Law2_SomeGeom_CpmPhys_Cpm
|
A generic class for inheritance by more specialized functors (e.g.Law2_ScGeom_CpmPhys_Cpm). Not to be used in simulations.
|
A less stable law
|
Experimental, unmaintained, or even broken law
|
Older tables (removed soon)
Class |
description |
interactionGeometry |
interactionPhysics |
used by and where
|
ElasticContactLaw
|
(the traditional Cundall's elastic-plastic law) This law has three parameters : tangential stiffness, normal stiffness, and friction coefficient - it modelises dry contacts (no tensile force allowed). |
SpheresContactGeometry |
ElasticContactInteraction |
TriaxialTest (Bruno Chareyre)
|
CohesiveFrictionalContactLaw
|
A versatile elastic-plastic contact law, with shear/normal/twisting/rolling stiffnesses, normal/shear strength (twisting/rolling strength could be added easily, for now they are infinite), shear/twisting creep |
SpheresContactGeometry |
CohesiveFrictionalInteraction |
CohesiveTriaxialTest (Bruno Chareyre/Cosurgi)
|
Concrete particle model (Cpm)
|
material model developed for concrete. It has damage, plasticity (friction), visco-damage (and visco-plasticity). The code unfortunately cannot be disclosed by contract, but algorithms will be published some day. |
Dem3DofGeom |
CpmPhys |
scripts (eudoxos)
|
ef2_Spheres_NormalShear_ElasticFrictionalLaw
|
Proof-of-concept for ConstitutiveLawDispatcher. Cohesive type of interaction; has elasticity in both normal and shear directions. |
SpheresContactGeometry |
NormalShearInteraction |
scripts/constitutive-law.py (eudoxos)
|
ElasticContactLaw2
|
like ElasticContactLaw, but using geometry algorithms in SpheresContactGeometry instead of computing that in-place; demonstrative only |
SpheresContactGeometry |
ElasticContactInteraction |
(eudoxos)
|
ElasticCohesiveLaw (deprecated)
|
inherited from SDEC, not used anywhere except SDECLinkedSpheres |
SDECLinkGeometry |
SDECLinkPhysics |
to be removed (relies on persistentInteractions)?
|
Spheres_Viscoelastic_SimpleViscoelasticContactLaw
|
Linear spring−dashpot contact model |
SpheresContactGeometry |
ViscoelasticInteraction |
(sega) for dynamic simulation
|
RockJointLaw
|
Inelastic normal behaviour (kn_unload # kn_load); transfert of an elastic-plastic moment; no cohesion or tensile limit |
SpheresContactGeometry |
RockJointPhys |
J. Duriez for simulations of "SimpleShear" Preprocessor (a simple shear box for studying rock joints)
|
Law2_ScGeom_CapillaryPhys_Capillarity
|
This law allows to take into account capillary forces/effects between spheres coming from the presence of interparticular liquid bridges (menisci). The law needs ascii files M(r=i) to work (see https://yade-dem.org/index.php/CapillaryTriaxialTest). These ASCII files contain a set of results from the resolution of the Laplace-Young equation for different configurations of the interacting geometry. |
SpheresContactGeometry |
CapillaryPhys |
L. Scholtes for simulation of unsaturated granular materials (e.g. TriaxialTestWater)
|
add your stuff here, please!
|
... |
... |
... |
|
InteractionPhysicsFunctors
Class |
description |
material |
interactionPhysics |
remarks
|
Ip2_CpmMat_CpmMat_CpmPhys
|
from the Cpm family; elastic, damage, plasticity, viscosity properties |
CpmMat |
CpmPhys |
(eudoxos)
|
SimpleElasticRelationships
|
... |
... |
... |
|
SimpleViscoelasticRelationships
|
From viscoelastic parameters of the pair bodies provides viscoelastic parameters of their interaction by the rule of consecutive connection. |
SimpleViscoelasticBodyParameters |
ViscoelasticInteraction |
(sega)
|
RockJointLawRelationships
|
Computes all the attributes of "RockJointPhys" used for application of RockJointLaw |
CohesiveFrictionalBodyParameters |
RockJointPhys |
J. Duriez for SimpleShear
|
Ip2_FrictMat_FrictMat_CapillaryPhys
|
computes all the elastic attributes for CapillaryPhys (duplicates Ip2_FrictMat_FrictMat_FrictPhys) |
Frictmat |
CapillaryPhys |
Luc Scholtes
|
InteractionGeometry
Class |
description |
|
SpheresContactGeometry
|
used almost everywhere in the DEM code, even for sphere-box contacts. |
|
SDECLinkGeometry
|
duplicated SpheresContactGeometry. (Should be removed)
|
...
|
.....
|
InteractionPhysics
Class |
description |
|
NormalInteraction
|
abstract class that has only normal stiffness and force
|
NormalShearInteraction
|
abstract class with normal and shear stiffnesses
|
CpmPhys
|
normal and shear physics with additional parameters for non-elastic domain.
|
ViscoelasticInteraction
|
elastic contact with additional parameters for normal and shear dashpot.
|
RockJointPhys
|
|
CapillaryPhys
|
parameters linked to the definition of a capillary bridge between 2 spheres (Volume,Force,extents over grains surfaces).
|