Yade wrapper class reference¶
Bodies¶
Body¶
-
class
yade.wrapper.
Body
(inherits Serializable)¶ A particle, basic element of simulation; interacts with other bodies.
-
aspherical
(=false)¶ Whether this body has different inertia along principal axes; NewtonIntegrator makes use of this flag to call rotation integration routine for aspherical bodies, which is more expensive.
-
bounded
(=true)¶ Whether this body should have Body.bound created. Note that bodies without a bound do not participate in collision detection. (In c++, use
Body::isBounded
/Body::setBounded
)
-
clumpId
¶ Id of clump this body makes part of; invalid number if not part of clump; see Body::isStandalone, Body::isClump, Body::isClumpMember properties.
Not meant to be modified directly from Python, use O.bodies.appendClumped instead.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dynamic
(=true)¶ Whether this body will be moved by forces. (In c++, use
Body::isDynamic
/Body::setDynamic
)
-
flags
(=FLAG_BOUNDED)¶ Bits of various body-related flags. Do not access directly. In c++, use isDynamic/setDynamic, isBounded/setBounded, isAspherical/setAspherical. In python, use Body.dynamic, Body.bounded, Body.aspherical.
-
groupMask
(=1)¶ Bitmask for interaction detection purposes: it is required that two bodies have at least one bit in common in their groupMask for their interaction to be possible from the Collider point of view.
-
id
(=Body::ID_NONE)¶ Unique id of this body.
-
intrs
((Body)arg1) → list :¶ Return list of all real interactions in which this body participates.
-
isClump
¶ True if this body is clump itself, false otherwise.
-
isClumpMember
¶ True if this body is clump member, false otherwise.
-
isFluidDomainBox
(=false)¶ Whether this body is a Fluid grid bounding box should have Body.bound created. FluidDomainBboxes` do not participate to collision detection with their own bodies, they may interact with external bodies and other subdomains through virtual interactions. (In c++, use
Body::getIsFluidDomainBbox
/Body::setIsFluidDomainBbox
)
-
isStandalone
¶ True if this body is neither clump, nor clump member; false otherwise.
-
isSubdomain
(=false)¶ Whether this body is a subdomain should have Body.bound created. Subdomains` do not participate to collision detection with their own bodies, they may interact with external bodies and other subdomains through virtual interactions. (In c++, use
Body::getIsSubdomain
/Body::setIsSubdomain
)
-
iterBorn
(=-1)¶ Step number at which the body was added to simulation.
-
mask
¶ Shorthand for Body::groupMask
-
mat
¶ Shorthand for Body::material
-
subdomain
(=0)¶ the subdomain this body belongs to.
-
timeBorn
(=-1)¶ Time at which the body was added to simulation.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
Shape¶
-
class
yade.wrapper.
Shape
(inherits Serializable)¶ Geometry of a body
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Box
(inherits Shape → Serializable)¶ -
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
extents
(=uninitalized)¶ Half-size of the cuboid
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
ChainedCylinder
(inherits Cylinder → Sphere → Shape → Serializable)¶ Geometry of a deformable chained cylinder, using geometry Cylinder.
-
chainedOrientation
(=Quaternionr::Identity())¶ Deviation of node1 orientation from node-to-node vector
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
initLength
(=0)¶ tensile-free length, used as reference for tensile strain
-
length
(=NaN)¶ Length [m]
-
radius
(=NaN)¶ Radius [m]
-
segment
(=Vector3r::Zero())¶ Length vector
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Clump
(inherits Shape → Serializable)¶ Rigid aggregate of bodies whose usage is detailed here
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
ids
¶ Ids of constituent particles (only informative; direct modifications will have no effect).
-
members
¶ Return clump members as {‘id1’:(relPos,relOri),…}
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Cylinder
(inherits Sphere → Shape → Serializable)¶ Geometry of a cylinder, as Minkowski sum of line and sphere.
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
length
(=NaN)¶ Length [m]
-
radius
(=NaN)¶ Radius [m]
-
segment
(=Vector3r::Zero())¶ Length vector
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
DeformableCohesiveElement
(inherits DeformableElement → Shape → Serializable)¶ Tetrahedral Deformable Element Composed of Nodes
-
addFace
((DeformableElement)arg1, (Vector3)arg2) → None :¶ Add a face into the element
-
addNode
((DeformableElement)arg1, (Body)arg2) → None :¶ Add a node shared_pt<:yref:’Body’>& as into the element
-
addPair
((DeformableCohesiveElement)arg1, (Body)arg2, (Body)arg3) → None :¶ Add a node shared_pt<:yref:’Body’>& as into the element
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
delNode
((DeformableElement)arg1, (Body)arg2) → None :¶ Remove a node shared_pt<:yref:’Body’>& from the element
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
elementframe
¶
-
faces
(=uninitalized)¶ Faces of the element for drawing
-
getNode
((DeformableElement)arg1, (int)arg2) → Body :¶ Get a node shared_pt<:yref:’Body’>& as into the element
-
getVolume
((DeformableElement)arg1) → float :¶ Get volume of the element
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
localmap
(=uninitalized)¶ Ids and relative positions+orientations of members of the deformable element (should not be accessed directly)
-
nodepairs
(=uninitalized)¶ Ids and relative position+orientation difference of members of the cohesive deformable element in the inital condition (should not be accessed directly)
-
removeLastFace
((DeformableElement)arg1) → None :¶ Remove a face from the element
-
removePair
((DeformableCohesiveElement)arg1, (Body)arg2, (Body)arg3) → None :¶ Add a node shared_pt<:yref:’Body’>& as into the element
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
DeformableElement
(inherits Shape → Serializable)¶ Deformable aggregate of nodes
-
addFace
((DeformableElement)arg1, (Vector3)arg2) → None :¶ Add a face into the element
-
addNode
((DeformableElement)arg1, (Body)arg2) → None :¶ Add a node shared_pt<:yref:’Body’>& as into the element
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
delNode
((DeformableElement)arg1, (Body)arg2) → None :¶ Remove a node shared_pt<:yref:’Body’>& from the element
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
elementframe
¶
-
faces
(=uninitalized)¶ Faces of the element for drawing
-
getNode
((DeformableElement)arg1, (int)arg2) → Body :¶ Get a node shared_pt<:yref:’Body’>& as into the element
-
getVolume
((DeformableElement)arg1) → float :¶ Get volume of the element
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
localmap
(=uninitalized)¶ Ids and relative positions+orientations of members of the deformable element (should not be accessed directly)
-
removeLastFace
((DeformableElement)arg1) → None :¶ Remove a face from the element
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Facet
(inherits Shape → Serializable)¶ Facet (triangular particle) geometry.
-
area
(=NaN)¶ Facet’s area
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
normal
(=Vector3r(NaN, NaN, NaN))¶ Facet’s normal \(\vec n\) (in local coordinate system) oriented towards \(\vec{e_0} \times \vec {e_1}\) with \(\vec {e_0} = \vec{V_0V_1}\), \(\vec {e_1} = \vec{V_1V_2}\) and \(\vec {V_i}\) the vertices
-
setVertices
((Facet)arg1, (Vector3)v0, (Vector3)v1, (Vector3)v2) → None :¶ Defines vertices
Parameters: Returns: nothing
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vertices
(=vector<Vector3r>(3, Vector3r(NaN, NaN, NaN)))¶ Vertex positions in local coordinates.
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
FluidDomainBbox
(inherits Shape → Serializable)¶ The bounding box of a fluid grid from one OpenFOAM/YALES2 proc
-
bIds
(=std::vector<Body::id_t>())¶ ids of bodies intersecting with this subdomain,
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
domainRank
(=-1)¶ rank of the OpenFOAM/YALES2 proc
-
hasIntersection
(=false)¶ if this Yade subdomain has intersection with this OpenFOAM/YALES2 subdomain
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
maxBound
(=Vector3r(NaN, NaN, NaN))¶ max bounds of the fluid grid
-
minBound
(=Vector3r(NaN, NaN, NaN))¶ min bounds of the fluid grid
-
minMaxisSet
(=false)¶ flag to check if the min max bounds of this body are set.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
GridConnection
(inherits Sphere → Shape → Serializable)¶ GridConnection shape (see [Effeindzourou2016], [Bourrier2013]). Component of a grid designed to link two GridNodes. It is highly recommended to use gridpfacet.gridConnection to generate correct GridConnections.
-
addPFacet
((GridConnection)arg1, (Body)Body) → None :¶ Add a PFacet to the GridConnection.
-
cellDist
(=Vector3i(0, 0, 0))¶ Distance of bodies in cell size units, if using periodic boundary conditions. Note that periodic boundary conditions for GridConnections have not yet been fully implemented.
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
getPFacets
((GridConnection)arg1) → object :¶ get list of linked PFacets.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
periodic
(=false)¶ true if two nodes from different periods are connected.
-
radius
(=NaN)¶ Radius [m]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
GridNode
(inherits Sphere → Shape → Serializable)¶ GridNode shape, component of a grid. To create a Grid, place the nodes first, they will define the spacial discretisation of it. It is highly recommended to use gridpfacet.gridNode to generate correct GridNodes. Note that the GridNodes should only be in an Interaction with other GridNodes. The Sphere-Grid contact is only handled by the GridConnections.
-
addConnection
((GridNode)arg1, (Body)Body) → None :¶ Add a GridConnection to the GridNode.
-
addPFacet
((GridNode)arg1, (Body)Body) → None :¶ Add a PFacet to the GridNode.
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
getConnections
((GridNode)arg1) → object :¶ get list of linked GridConnection’s.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
radius
(=NaN)¶ Radius [m]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
LevelSet
(inherits Shape → Serializable)¶ A level set description of particle shape based on a discrete distance field and surface nodes [Duriez2021a] [Duriez2021b]. See examples/levelSet for example scripts.
-
axesAABE
(=Vector3r::Zero())¶ The half lengths of the principal axes of the axis-aligned bounding ellipsoid (AABE) of the level-set shape. Format (rx,ry,rz). Only works for VLS-DEM.
-
center
((LevelSet)arg1) → Vector3 :¶ The center of mass of the volume (considering obviously an uniform density for this volume), in local axes (for verification purposes, by comparison with the origin).
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
computeMarchingCubes
((LevelSet)arg1) → None :¶ Compute or recompute the triangulation of the particle surface after using the Marching Cubes algorithm on distField.
-
corners
(=uninitalized)¶ The 8 corners of an axis-aligned bounding box, in local axes. It is computed once for all by Bo1_LevelSet_Aabb and used by the same Functor to get Body.bound.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
distField
(=uninitalized)¶ The signed (< 0 when inside) distance-to-surface function as a discrete scalar field on lsGrid, with distField[i][j][k] corresponding to lsGrid.gridPoint(i,j,k). From Python, slice this multi-dimensional list with care: while distField[i][:][:] corresponds to values on a x-cst plane, distField[:][:][k] is not at z-constant (use [[distField[i][j][k] for j in ..] for i in ..] instead)
-
distance
((LevelSet)arg1, (Vector3)pt[, (bool)unbound=False]) → float :¶ Distance to surface at pt, with pt being expressed in the local frame. Has an ‘unbound’ flag signaling whether to allow the computation of distance values outside of the grid extents.
-
getSurface
((LevelSet)arg1) → float :¶ Returns particle surface as computed from numeric integration over the surface nodes. Requires nodesPath = 1.
-
hasAABE
(=false)¶ Flag to indicate whether an axis-aligned bounding ellipsoid (AABE) has been provided by the user. If true, you must specify axisAABE. Only works for VLS-DEM.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
inertia
((LevelSet)arg1) → Vector3 :¶ The eigenvalues of the geometric inertia matrix (the one considering the infinitesimal volume as the integrand, instead of infinitesimal mass) as a Vector3r.
-
lsGrid
(=new RegularGrid)¶ The regular grid carrying distField, in local axes.
-
marchingCubesNbTriangles
((LevelSet)arg1) → int :¶ Returns the number of triangles forming the surface triangulation as per the Marching Cubes algorithm (executed on distField).
-
marchingCubesNormals
((LevelSet)arg1) → object :¶ Returns the normals for a surface triangulation obtained after executing the Marching Cubes algorithm on distField.
-
marchingCubesVertices
((LevelSet)arg1) → object :¶ Returns the vertices for a surface triangulation obtained after executing the Marching Cubes algorithm on distField.
-
nSurfNodes
(=102)¶ The number of boundary nodes in surfNodes, previously coined nNodes in [Duriez2021b]. Usually set through utils levelSetBody() function (has to be set at instantiation in all cases). Please use a perfect square + 2 if not twoD and if nodesPath = 1.
-
nodesPath
(=2)¶ Defines how the space of spherical coordinates \((\theta \in [0;\pi] ,\varphi\in [0;2 \pi])\) is discretized when ray tracing the boundary nodes: 1 gives a rectangular partition of that space, plus two nodes at \(\theta = 0 [\pi]\); 2 locates the nodes along a spiral path [Duriez2021a]
-
nodesTol
(=50)¶ Tolerance coefficient for accepting (if \(|\phi| / L <\) nodesTol \(\times\) numeric precision with \(\phi\) the return value of distance and \(L\) a body-characteristic length taken as \(\sqrt[3]{V}\) with \(V\) the volume, or \(\sqrt{V/g}\) with \(g\) the grid spacing if twoD) boundary nodes proposed by the ray tracing algorithm.
-
normal
((LevelSet)arg1, (Vector3)pt[, (bool)unbound=False]) → Vector3 :¶ Normal vector to the surface at some pt. Local frame applies to both output normal and input pt. Has an ‘unbound’ flag signaling whether to allow the computation of the normal outside of the grid extents.
-
rayTrace
((LevelSet)arg1, (Vector3)ray) → None :¶ Performs one ray tracing, possibly modifying surfNodes. Provided for debugging purposes
-
smearCoeff
(=1.5)¶ Rules the smearing coefficient \(\varepsilon > 0\) of the Heaviside step function for a smooth integration of the particle’s volume close to its surface (the higher \(\varepsilon\) the smoother, i.e. the more diffuse the surface in terms of volume integration). Given in reciprocal multiples of \(R_{cell}\) the half diagonal of the cells of the lsGrid: \(\varepsilon = R_{cell}\times 1/\) smearCoeff (smearing is deactivated if negative).
-
sphericity
(=-1)¶ Shape sphericity computed from boundary nodes and assuming both largest inscribed sphere and smallest circumscribed sphere have the origin (of local axes) as center.
-
surfNodes
(=uninitalized)¶ Surface discretization nodes (the list of) used for exact contact treatment in Ig2_LevelSet_LevelSet_ScGeom, previously coined boundNodes in [Duriez2021b]. Expressed in local frame. Getting them back after a save/load cycle requires to launch one iteration or to first ask for shape.center.
-
twoD
(=false)¶ True for z-invariant shapes. Serves to restrict the definition of surfNodes in the (x,y) plane.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
volume
((LevelSet)arg1) → float :¶ The volume defined by the negative domain of the level set function, in a voxellised fashion. A voxel is said to be inside according to the level set value at its minimum grid point and depending upon possible smearing considerations as per smearCoeff.
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Lin4NodeTetra
(inherits DeformableElement → Shape → Serializable)¶ Tetrahedral Deformable Element Composed of Nodes
-
addFace
((DeformableElement)arg1, (Vector3)arg2) → None :¶ Add a face into the element
-
addNode
((DeformableElement)arg1, (Body)arg2) → None :¶ Add a node shared_pt<:yref:’Body’>& as into the element
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
delNode
((DeformableElement)arg1, (Body)arg2) → None :¶ Remove a node shared_pt<:yref:’Body’>& from the element
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
elementframe
¶
-
faces
(=uninitalized)¶ Faces of the element for drawing
-
getNode
((DeformableElement)arg1, (int)arg2) → Body :¶ Get a node shared_pt<:yref:’Body’>& as into the element
-
getVolume
((DeformableElement)arg1) → float :¶ Get volume of the element
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
localmap
(=uninitalized)¶ Ids and relative positions+orientations of members of the deformable element (should not be accessed directly)
-
removeLastFace
((DeformableElement)arg1) → None :¶ Remove a face from the element
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Lin4NodeTetra_Lin4NodeTetra_InteractionElement
(inherits DeformableCohesiveElement → DeformableElement → Shape → Serializable)¶ Tetrahedral Deformable Element Composed of Nodes
-
addFace
((DeformableElement)arg1, (Vector3)arg2) → None :¶ Add a face into the element
-
addNode
((DeformableElement)arg1, (Body)arg2) → None :¶ Add a node shared_pt<:yref:’Body’>& as into the element
-
addPair
((DeformableCohesiveElement)arg1, (Body)arg2, (Body)arg3) → None :¶ Add a node shared_pt<:yref:’Body’>& as into the element
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
delNode
((DeformableElement)arg1, (Body)arg2) → None :¶ Remove a node shared_pt<:yref:’Body’>& from the element
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
elementframe
¶
-
faces
(=uninitalized)¶ Faces of the element for drawing
-
getNode
((DeformableElement)arg1, (int)arg2) → Body :¶ Get a node shared_pt<:yref:’Body’>& as into the element
-
getVolume
((DeformableElement)arg1) → float :¶ Get volume of the element
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
localmap
(=uninitalized)¶ Ids and relative positions+orientations of members of the deformable element (should not be accessed directly)
-
nodepairs
(=uninitalized)¶ Ids and relative position+orientation difference of members of the cohesive deformable element in the inital condition (should not be accessed directly)
-
removeLastFace
((DeformableElement)arg1) → None :¶ Remove a face from the element
-
removePair
((DeformableCohesiveElement)arg1, (Body)arg2, (Body)arg3) → None :¶ Add a node shared_pt<:yref:’Body’>& as into the element
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Node
(inherits Shape → Serializable)¶ Geometry of node particle.
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
radius
(=0.1)¶ Radius [m]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
PFacet
(inherits Shape → Serializable)¶ PFacet (particle facet) geometry (see [Effeindzourou2016], [Effeindzourou2015a]). It is highly recommended to use the helper functions in gridpfacet (e.g., gridpfacet.pfacetCreator1-4) to generate correct PFacet elements.
-
area
(=NaN)¶ PFacet’s area
-
cellDist
(=Vector3i(0, 0, 0))¶ Distance of bodies in cell size units, if using periodic boundary conditions. Note that periodic boundary conditions for PFacets have not yet been fully implemented.
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
normal
(=Vector3r(NaN, NaN, NaN))¶ PFacet’s normal (in local coordinate system)
-
radius
(=-1)¶ PFacet’s radius
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Polyhedra
(inherits Shape → Serializable)¶ Polyhedral (convex) geometry.
-
GetCentroid
((Polyhedra)arg1) → Vector3 :¶ return polyhedra’s centroid
-
GetInertia
((Polyhedra)arg1) → Vector3 :¶ return polyhedra’s inertia tensor
-
GetOri
((Polyhedra)arg1) → Quaternion :¶ return polyhedra’s orientation
-
GetSurfaceTriangulation
((Polyhedra)arg1) → object :¶ triangulation of facets (for plotting)
-
GetSurfaces
((Polyhedra)arg1) → object :¶ get indices of surfaces’ vertices (for postprocessing)
-
GetVolume
((Polyhedra)arg1) → float :¶ return polyhedra’s volume
-
Initialize
((Polyhedra)arg1) → None :¶ Initialization
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
seed
(=time(__null))¶ Seed for random generator.
-
setVertices
((Polyhedra)arg1, (object)arg2) → None :¶ set vertices and update receiver. Takes a list/tuple of vertices as argument.
Note
Causes memory leaks, so if you want to use it maaaany times, use one of setVertices mentioned lower, passing each vertex as individual argument (currently only setVertices(v1,v2,v3,v4) for tetrahedron is implemented, on request it is easy to implement more vertices).
-
setVertices4
((Polyhedra)arg1, (Vector3)arg2, (Vector3)arg3, (Vector3)arg4, (Vector3)arg5) → None :¶ set 4 vertices and update receiver. Each vertex is single argument.
-
size
(=Vector3r(1., 1., 1.))¶ Size of the grain in meters - x,y,z - before random rotation
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
v
(=uninitalized)¶ Polyhedron vertices in local coordinate system.
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
PotentialBlock
(inherits Shape → Serializable)¶ Geometry of PotentialBlock.
-
AabbMinMax
(=false)¶ Whether the exact Aabb should be calculated. If false, an approximate cubic Aabb is defined with edges of
2R
-
R
(=0.0)¶ R in Potential Particles. If left zero, a default value is calculated as half the distance of the farthest vertices
-
a
(=uninitalized)¶ List of a coefficients of plane normals
-
b
(=uninitalized)¶ List of b coefficients of plane normals
-
boundaryNormal
(=Vector3r::Zero())¶ Normal direction of boundary if fixedNormal=True
-
c
(=uninitalized)¶ List of c coefficients of plane normals
-
cohesion
(=uninitalized)¶ Cohesion (stress) of each face (property for plane, rock joint)
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
connectivity
(=uninitalized)¶ Connectivity of vertices for each plane (auto-updated)
-
d
(=uninitalized)¶ List of d coefficients of plane equations
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
erase
(=false)¶ Parameter to mark particles to be removed (for excavation)
-
fixedNormal
(=false)¶ Whether to fix the contact normal at a boundary, using boundaryNormal
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
id
(=-1)¶ Particle id (for graphics in vtk output)
-
inertia
(=Vector3r::Zero())¶ Principal inertia tensor (auto-updated)
-
intactRock
(=false)¶ Property for plane
-
isBolt
(=false)¶ Whether a block is part of a bolt (used in the Rockbolt.cpp script)
-
isBoundary
(=false)¶ Whether the particle is part of a boundary block
-
isLining
(=false)¶ Whether particle is part of tunnel lining (used in the RockLining.cpp script)
-
jointType
(=uninitalized)¶ jointType
-
k
(=0.0)¶ k in Potential Particles (not used)
-
liningFriction
(=20.0)¶ Lining friction
-
liningLength
(=0.0)¶ Lining spacing between nodes
-
liningNormalPressure
(=Vector3r(0, 0, 0))¶ Normal pressure acting on lining
-
liningStiffness
(=pow(10.0, 8))¶ Lining stiffness
-
liningTensionGap
(=0.0)¶ Numerical gap between lining and block to allowing tension to be calculated
-
liningTotalPressure
(=Vector3r(0, 0, 0))¶ Total pressure acting on lining
-
maxAabb
(=Vector3r::Zero())¶ Max from box centre: Used for visualisation in vtk
-
minAabb
(=Vector3r::Zero())¶ Min from box centre: Used for visualisation in vtk
-
orientation
(=Quaternionr::Identity())¶ Principal orientation
-
phi_b
(=uninitalized)¶ Basic friction angle of each face (property for plane, rock joint)
-
phi_r
(=uninitalized)¶ Residual friction angle of each face (property for plane, rock joint)
-
position
(=Vector3r::Zero())¶ Initial position of the particle, if initially defined eccentrically to the centroid (auto-updated)
-
r
(=0.0)¶ r in Potential Particles
-
tension
(=uninitalized)¶ Tension (stress) of each face (property for plane, rock joint)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vertices
(=uninitalized)¶ Vertices (auto-updated)
-
volume
(=uninitalized)¶ Volume (auto-updated)
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
PotentialParticle
(inherits Shape → Serializable)¶ EXPERIMENTAL. Geometry of PotentialParticle.
-
AabbMinMax
(=false)¶ Whether the exact Aabb should be calculated. If false, an approximate cubic Aabb is defined with edges of
2R
-
R
(=1.0)¶ R in Potential Particles
-
a
(=uninitalized)¶ List of a coefficients of plane normals
-
b
(=uninitalized)¶ List of b coefficients of plane normals
-
boundaryNormal
(=Vector3r::Zero())¶ Normal direction of boundary if fixedNormal=True
-
c
(=uninitalized)¶ List of c coefficients of plane normals
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
d
(=uninitalized)¶ List of d coefficients of plane normals
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
fixedNormal
(=false)¶ Whether to fix the contact normal at a boundary, using boundaryNormal
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
id
(=1)¶ Particle id (for graphics in vtk output)
-
isBoundary
(=false)¶ Whether the particle is part of a boundary particle
-
k
(=0.1)¶ k in Potential Particles
-
maxAabb
(=Vector3r::Zero())¶ Max from box centre: Used for visualisation in vtk and qt
-
maxAabbRotated
(=Vector3r::Zero())¶ Max from box centre: Used for primary contact detection
-
minAabb
(=Vector3r::Zero())¶ Min from box centre: Used for visualisation in vtk and qt
-
minAabbRotated
(=Vector3r::Zero())¶ Min from box centre: Used for primary contact detection
-
r
(=0.1)¶ r in Potential Particles
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vertices
(=uninitalized)¶ Vertices
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Sphere
(inherits Shape → Serializable)¶ Geometry of spherical particle.
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
radius
(=NaN)¶ Radius [m]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Subdomain
(inherits Shape → Serializable)¶ The bounding box of a mpi subdomain. Stores internals and provides optimized functions for communications between workers. This class may not be used directly. Instead, Subdomains are appended automatically to the scene bodies when using mpy.mpirun
-
boundOnAxis
((Subdomain)arg1, (Bound)bound, (Vector3)axis, (bool)min) → float :¶ computes projected position of a bound in a certain direction
- boundOnAxis( (Subdomain)arg1, (Bound)bound, (Vector3)axis, (bool)min) -> float :
- computes projected position of a bound in a certain direction
-
boundsMax
(=Vector3r(NaN, NaN, NaN))¶ max corner of all bboxes of members; differs from effective domain bounds by the extra length (sweepLength)
-
boundsMin
(=Vector3r(NaN, NaN, NaN))¶ min corner of all bboxes of members; differs from effective domain bounds by the extra length (sweepLength)
-
centerOfMass
((Subdomain)arg1) → Vector3 :¶ returns center of mass of assigned bodies
- centerOfMass( (Subdomain)arg1) -> Vector3 :
- returns center of mass of assigned bodies
-
cleanIntersections
((Subdomain)arg1, (int)otherDomain) → None :¶ makes sure that the ids in the current subdomain belong to the current subdomain
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
comm
¶ Communicator to be used for MPI (converts mpi4py comm <-> c++ comm)
-
completeSendBodies
((Subdomain)arg1) → None :¶ calls MPI_wait to complete the non blocking sends/recieves.
-
countIntsWith
((Subdomain)arg1, (int)body, (int)someSubDomain[, (Scene)someSubDomain=<Scene instance at 0xec7930>]) → int :¶ returns for a body the count of interactions (real or virtual) with bodies from a certain subdomain, interactions with subdomains excluded. Third parameter (scene pointer) can be left to default (equivalent to O._sceneObj).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
extraLength
(=0)¶ verlet dist for the subdomain, added to bodies verletDist
-
filterIntersections
((Subdomain)arg1) → float :¶ clear intersections and mirror intersections of all non-interacting bodies.
-
filteredInts
((Subdomain)arg1, (int)someSubDomain, (bool)mirror) → object :¶ return a copy of intersections or mirrorIntersections from which non-interacting bodies have been removed.
-
getMirrorIntrs
((Subdomain)arg1) → None :¶ get mirrorIntersections from other subdomains
-
getRankSize
((Subdomain)arg1) → None :¶ set subdomain ranks, used for communications -> merging, sending bodies etc.
-
getStateBoundsValuesFromIds
((Subdomain)arg1, (object)b_ids) → object :¶ returns pos,vel,angVel,ori,bounds of listed bodies.
-
getStateValues
((Subdomain)arg1, (int)otherDomain) → object :¶ returns pos,vel,angVel,ori of bodies interacting with a given otherDomain, based on Subdomain.intersections.
-
getStateValuesFromIds
((Subdomain)arg1, (object)b_ids) → object :¶ returns pos,vel,angVel,ori of listed bodies.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
ids
(=vector<Body::id_t>())¶ Ids of owned particles.
-
init
((Subdomain)arg1) → None :¶ Initialize subdomain variables as rank and buffer sizes, call this from each thread after scene distribution by master.
-
intersections
¶ lists of bodies from this subdomain intersecting other subdomains. WARNING: only assignement and concatenation allowed
-
medianFilterCPP
((Subdomain)arg1, (int)arg2, (Vector3)bodiesToRecv, (Vector3)otherSubdomain, (int)oterSubdomainCenterofMass, (bool)useAABB) → object :¶ cpp version of median filter, used for body reallocation operations.
-
mergeOp
((Subdomain)arg1) → None :¶ merge with setting interactions
-
migrateBodiesSend
((Subdomain)arg1, (object)bodiesToSend, (int)destination) → None :¶ ids of body to be sent have their subdomain parameter reassigned, followed by sendBodies
-
mirrorIntersections
¶ lists of bodies from other subdomains intersecting this one. WARNING: only assignement and concatenation allowed
-
mpiIrecvStates
((Subdomain)arg1, (int)otherSubdomain) → None :¶ mpi-Irecv states from another domain (non-blocking)
-
mpiRecvStates
((Subdomain)arg1, (int)otherSubdomain) → None :¶ mpi-recv states from another domain (blocking)
-
mpiSendStates
((Subdomain)arg1, (int)otherSubdomain) → None :¶ mpi-send states from current domain to another domain (blocking)
-
mpiWaitReceived
((Subdomain)arg1, (int)otherSubdomain) → None :¶ mpi-Wait states from another domain (upon return the buffer is set)
-
receiveBodies
((Subdomain)arg1, (int)sender) → None :¶ Receive the bodies from MPI sender rank to MPI receiver rank
-
sendBodies
((Subdomain)sender, (int)receiver, (object)idsToSend) → None :¶ Copy the bodies from MPI sender rank to MPI receiver rank
-
setIDstoSubdomain
((Subdomain)arg1, (list)idList) → None :¶ set list of ids to the subdomain.
-
setMinMax
((Subdomain)arg1) → None :¶ returns bounding min-max based on members bounds. precondition: the members bounds have been dispatched already, else we re-use old values. Carefull if subdomain is not at the end of O.bodies.
-
setStateBoundsValuesFromIds
((Subdomain)arg1, (object)b_ids, (object)input) → None :¶ set pos,vel,angVel,ori,bounds from listed body ids and data.
-
setStateValuesFromBuffer
((Subdomain)arg1, (int)subdomain) → None :¶ set pos,vel,angVel,ori from state buffer.
-
setStateValuesFromIds
((Subdomain)arg1, (object)b_ids, (object)input) → None :¶ set pos,vel,angVel,ori from listed body ids and data.
-
splitBodiesToWorkers
((Subdomain)arg1, (bool)eraseWorkerBodies) → None :¶ of true bodies in workers are erased and reassigned.
-
subdomains
¶ subdomain ids of other bodies, WARNING: only assignement and concatenation allowed
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
updateLocalIds
((Subdomain)arg1, (bool)eraseRemoteMastrer) → None :¶ updates the ids in the subdomain id vector, if not eraseRemoteMastrer, body->subdomain in master are updated.
-
updateNewMirrorIntrs
((Subdomain)arg1, (int)otherdomain, (object)newMirrorList) → None :¶ update the mirrorIntersections of a specific subdomain
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Tetra
(inherits Shape → Serializable)¶ Tetrahedron geometry.
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
v
(=std::vector<Vector3r>(4))¶ Tetrahedron vertices (in local coordinate system).
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
-
class
yade.wrapper.
Wall
(inherits Shape → Serializable)¶ Object representing infinite plane aligned with the coordinate system (axis-aligned wall).
-
axis
(=0)¶ Axis of the normal; can be 0,1,2 for +x, +y, +z respectively (Body’s orientation is disregarded for walls)
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering (normalized RGB).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Shape)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
highlight
(=false)¶ Whether this Shape will be highlighted when rendered.
-
sense
(=0)¶ Which side of the wall interacts: -1 for negative only, 0 for both, +1 for positive only
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
wire
(=false)¶ Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).
-
State¶
-
class
yade.wrapper.
State
(inherits Serializable)¶ State of a body (spatial configuration, internal variables).
-
angMom
(=Vector3r::Zero())¶ Current angular momentum
-
angVel
(=Vector3r::Zero())¶ Current angular velocity
-
blockedDOFs
¶ Degress of freedom where linear/angular velocity will be always constant (equal to zero, or to an user-defined value), regardless of applied force/torque. String that may contain ‘xyzXYZ’ (translations and rotations).
-
densityScaling
(=-1)¶ (auto-updated) see GlobalStiffnessTimeStepper::targetDt.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((State)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
displ
((State)arg1) → Vector3 :¶ Displacement from reference position (pos - refPos)
-
inertia
(=Vector3r::Zero())¶ Inertia of associated body, in local coordinate system.
-
isDamped
(=true)¶ Damping in NewtonIntegrator can be deactivated for individual particles by setting this variable to FALSE. E.g. damping is inappropriate for particles in free flight under gravity but it might still be applicable to other particles in the same simulation.
-
mass
(=0)¶ Mass of this body
-
ori
¶ Current orientation.
-
pos
¶ Current position.
-
refOri
(=Quaternionr::Identity())¶ Reference orientation
-
refPos
(=Vector3r::Zero())¶ Reference position
-
rot
((State)arg1) → Vector3 :¶ Rotation from reference orientation (as rotation vector)
-
se3
(=Se3r(Vector3r::Zero(), Quaternionr::Identity()))¶ Position and orientation as one object.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vel
(=Vector3r::Zero())¶ Current linear velocity.
-
-
class
yade.wrapper.
ChainedState
(inherits State → Serializable)¶ State of a chained bodies, containing information on connectivity in order to track contacts jumping over contiguous elements. Chains are 1D lists from which id of chained bodies are retrieved via rank and chainNumber.
-
addToChain
((ChainedState)arg1, (int)bodyId) → None :¶ Add body to current active chain
-
angMom
(=Vector3r::Zero())¶ Current angular momentum
-
angVel
(=Vector3r::Zero())¶ Current angular velocity
-
bId
(=-1)¶ id of the body containing - for postLoad operations only.
-
blockedDOFs
¶ Degress of freedom where linear/angular velocity will be always constant (equal to zero, or to an user-defined value), regardless of applied force/torque. String that may contain ‘xyzXYZ’ (translations and rotations).
-
chainNumber
(=0)¶ chain id.
-
currentChain
= 0¶
-
densityScaling
(=-1)¶ (auto-updated) see GlobalStiffnessTimeStepper::targetDt.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((State)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
displ
((State)arg1) → Vector3 :¶ Displacement from reference position (pos - refPos)
-
inertia
(=Vector3r::Zero())¶ Inertia of associated body, in local coordinate system.
-
isDamped
(=true)¶ Damping in NewtonIntegrator can be deactivated for individual particles by setting this variable to FALSE. E.g. damping is inappropriate for particles in free flight under gravity but it might still be applicable to other particles in the same simulation.
-
mass
(=0)¶ Mass of this body
-
ori
¶ Current orientation.
-
pos
¶ Current position.
-
rank
(=0)¶ rank in the chain.
-
refOri
(=Quaternionr::Identity())¶ Reference orientation
-
refPos
(=Vector3r::Zero())¶ Reference position
-
rot
((State)arg1) → Vector3 :¶ Rotation from reference orientation (as rotation vector)
-
se3
(=Se3r(Vector3r::Zero(), Quaternionr::Identity()))¶ Position and orientation as one object.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vel
(=Vector3r::Zero())¶ Current linear velocity.
-
-
class
yade.wrapper.
CpmState
(inherits State → Serializable)¶ State information about body use by cpm-model.
None of that is used for computation (at least not now), only for post-processing.
-
angMom
(=Vector3r::Zero())¶ Current angular momentum
-
angVel
(=Vector3r::Zero())¶ Current angular velocity
-
blockedDOFs
¶ Degress of freedom where linear/angular velocity will be always constant (equal to zero, or to an user-defined value), regardless of applied force/torque. String that may contain ‘xyzXYZ’ (translations and rotations).
-
damageTensor
(=Matrix3r::Zero())¶ Damage tensor computed with microplane theory averaging. state.damageTensor.trace() = state.normDmg
-
densityScaling
(=-1)¶ (auto-updated) see GlobalStiffnessTimeStepper::targetDt.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((State)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
displ
((State)arg1) → Vector3 :¶ Displacement from reference position (pos - refPos)
-
epsVolumetric
(=0)¶ Volumetric strain around this body (unused for now)
-
inertia
(=Vector3r::Zero())¶ Inertia of associated body, in local coordinate system.
-
isDamped
(=true)¶ Damping in NewtonIntegrator can be deactivated for individual particles by setting this variable to FALSE. E.g. damping is inappropriate for particles in free flight under gravity but it might still be applicable to other particles in the same simulation.
-
mass
(=0)¶ Mass of this body
-
normDmg
(=0)¶ Average damage including already deleted contacts (it is really not damage, but 1-relResidualStrength now)
-
numBrokenCohesive
(=0)¶ Number of (cohesive) contacts that damaged completely
-
numContacts
(=0)¶ Number of contacts with this body
-
ori
¶ Current orientation.
-
pos
¶ Current position.
-
refOri
(=Quaternionr::Identity())¶ Reference orientation
-
refPos
(=Vector3r::Zero())¶ Reference position
-
rot
((State)arg1) → Vector3 :¶ Rotation from reference orientation (as rotation vector)
-
se3
(=Se3r(Vector3r::Zero(), Quaternionr::Identity()))¶ Position and orientation as one object.
-
stress
(=Matrix3r::Zero())¶ Stress tensor of the spherical particle (under assumption that particle volume = pi*r*r*r*4/3.) for packing fraction 0.62
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vel
(=Vector3r::Zero())¶ Current linear velocity.
-
-
class
yade.wrapper.
JCFpmState
(inherits ThermalState → State → Serializable)¶ JCFpm state information about each body.
-
Cp
(=0)¶ Heat capacity of the body
-
Tcondition
(=false)¶ indicates if particle is assigned dirichlet (constant temp) condition
-
alpha
(=0)¶ coefficient of thermal expansion
-
angMom
(=Vector3r::Zero())¶ Current angular momentum
-
angVel
(=Vector3r::Zero())¶ Current angular velocity
-
blockedDOFs
¶ Degress of freedom where linear/angular velocity will be always constant (equal to zero, or to an user-defined value), regardless of applied force/torque. String that may contain ‘xyzXYZ’ (translations and rotations).
-
boundaryId
(=-1)¶ identifies if a particle is associated with constant temperature thrermal boundary condition
-
damageIndex
(=0)¶ Ratio of broken bonds over initial bonds. [-]
-
delRadius
(=0)¶ radius change due to thermal expansion
-
densityScaling
(=-1)¶ (auto-updated) see GlobalStiffnessTimeStepper::targetDt.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((State)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
displ
((State)arg1) → Vector3 :¶ Displacement from reference position (pos - refPos)
-
inertia
(=Vector3r::Zero())¶ Inertia of associated body, in local coordinate system.
-
isCavity
(=false)¶ flag used for unbounding cavity bodies
-
isDamped
(=true)¶ Damping in NewtonIntegrator can be deactivated for individual particles by setting this variable to FALSE. E.g. damping is inappropriate for particles in free flight under gravity but it might still be applicable to other particles in the same simulation.
-
joint
(=0)¶ Indicates the number of joint surfaces to which the particle belongs (0-> no joint, 1->1 joint, etc..). [-]
-
jointNormal1
(=Vector3r::Zero())¶ Specifies the normal direction to the joint plane 1. Rk: the ideal here would be to create a vector of vector wich size is defined by the joint integer (as much joint normals as joints). However, it needs to make the pushback function works with python since joint detection is done through a python script. lines 272 to 312 of cpp file should therefore be adapted. [-]
-
jointNormal2
(=Vector3r::Zero())¶ Specifies the normal direction to the joint plane 2. [-]
-
jointNormal3
(=Vector3r::Zero())¶ Specifies the normal direction to the joint plane 3. [-]
-
k
(=0)¶ thermal conductivity of the body
-
mass
(=0)¶ Mass of this body
-
nbBrokenBonds
(=0)¶ Number of broken bonds. [-]
-
nbInitBonds
(=0)¶ Number of initial bonds. [-]
-
oldTemp
(=0)¶ change of temp (for thermal expansion)
-
onJoint
(=false)¶ Identifies if the particle is on a joint surface.
-
ori
¶ Current orientation.
-
pos
¶ Current position.
-
refOri
(=Quaternionr::Identity())¶ Reference orientation
-
refPos
(=Vector3r::Zero())¶ Reference position
-
rot
((State)arg1) → Vector3 :¶ Rotation from reference orientation (as rotation vector)
-
se3
(=Se3r(Vector3r::Zero(), Quaternionr::Identity()))¶ Position and orientation as one object.
-
stabilityCoefficient
(=0)¶ sum of solid and fluid thermal resistivities for use in automatic timestep estimation
-
stepFlux
(=0)¶ flux during current step
-
temp
(=0)¶ temperature of the body
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vel
(=Vector3r::Zero())¶ Current linear velocity.
-
-
class
yade.wrapper.
PartialSatState
(inherits State → Serializable)¶ Hertz mindlin state information about each body. Only active if partially saturated clay model is active.
-
angMom
(=Vector3r::Zero())¶ Current angular momentum
-
angVel
(=Vector3r::Zero())¶ Current angular velocity
-
blockedDOFs
¶ Degress of freedom where linear/angular velocity will be always constant (equal to zero, or to an user-defined value), regardless of applied force/torque. String that may contain ‘xyzXYZ’ (translations and rotations).
-
densityScaling
(=-1)¶ (auto-updated) see GlobalStiffnessTimeStepper::targetDt.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((State)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
displ
((State)arg1) → Vector3 :¶ Displacement from reference position (pos - refPos)
-
incidentCells
(=0)¶ number of incident cells
-
inertia
(=Vector3r::Zero())¶ Inertia of associated body, in local coordinate system.
-
isDamped
(=true)¶ Damping in NewtonIntegrator can be deactivated for individual particles by setting this variable to FALSE. E.g. damping is inappropriate for particles in free flight under gravity but it might still be applicable to other particles in the same simulation.
-
lastIncidentCells
(=0)¶ number of incident cells
-
mass
(=0)¶ Mass of this body
-
ori
¶ Current orientation.
-
pos
¶ Current position.
-
radiiChange
(=0)¶ total change of particle radius due to swelling
-
radiiOriginal
(=0)¶ original particle radius prior to swelling
-
refOri
(=Quaternionr::Identity())¶ Reference orientation
-
refPos
(=Vector3r::Zero())¶ Reference position
-
rot
((State)arg1) → Vector3 :¶ Rotation from reference orientation (as rotation vector)
-
se3
(=Se3r(Vector3r::Zero(), Quaternionr::Identity()))¶ Position and orientation as one object.
-
suction
(=0)¶ suction computed for particle (sum(sat of inc. cells)/num inc. cells)
-
suctionSum
(=0)¶ sum of suctions associated with incident cells
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vel
(=Vector3r::Zero())¶ Current linear velocity.
-
volumeOriginal
(=0)¶ original particle volume stored for strain increments
-
-
class
yade.wrapper.
ThermalState
(inherits State → Serializable)¶ State containing quantities for thermal physics.
-
Cp
(=0)¶ Heat capacity of the body
-
Tcondition
(=false)¶ indicates if particle is assigned dirichlet (constant temp) condition
-
alpha
(=0)¶ coefficient of thermal expansion
-
angMom
(=Vector3r::Zero())¶ Current angular momentum
-
angVel
(=Vector3r::Zero())¶ Current angular velocity
-
blockedDOFs
¶ Degress of freedom where linear/angular velocity will be always constant (equal to zero, or to an user-defined value), regardless of applied force/torque. String that may contain ‘xyzXYZ’ (translations and rotations).
-
boundaryId
(=-1)¶ identifies if a particle is associated with constant temperature thrermal boundary condition
-
delRadius
(=0)¶ radius change due to thermal expansion
-
densityScaling
(=-1)¶ (auto-updated) see GlobalStiffnessTimeStepper::targetDt.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((State)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
displ
((State)arg1) → Vector3 :¶ Displacement from reference position (pos - refPos)
-
inertia
(=Vector3r::Zero())¶ Inertia of associated body, in local coordinate system.
-
isCavity
(=false)¶ flag used for unbounding cavity bodies
-
isDamped
(=true)¶ Damping in NewtonIntegrator can be deactivated for individual particles by setting this variable to FALSE. E.g. damping is inappropriate for particles in free flight under gravity but it might still be applicable to other particles in the same simulation.
-
k
(=0)¶ thermal conductivity of the body
-
mass
(=0)¶ Mass of this body
-
oldTemp
(=0)¶ change of temp (for thermal expansion)
-
ori
¶ Current orientation.
-
pos
¶ Current position.
-
refOri
(=Quaternionr::Identity())¶ Reference orientation
-
refPos
(=Vector3r::Zero())¶ Reference position
-
rot
((State)arg1) → Vector3 :¶ Rotation from reference orientation (as rotation vector)
-
se3
(=Se3r(Vector3r::Zero(), Quaternionr::Identity()))¶ Position and orientation as one object.
-
stabilityCoefficient
(=0)¶ sum of solid and fluid thermal resistivities for use in automatic timestep estimation
-
stepFlux
(=0)¶ flux during current step
-
temp
(=0)¶ temperature of the body
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vel
(=Vector3r::Zero())¶ Current linear velocity.
-
-
class
yade.wrapper.
WireState
(inherits State → Serializable)¶ Wire state information of each body.
None of that is used for computation (at least not now), only for post-processing.
-
angMom
(=Vector3r::Zero())¶ Current angular momentum
-
angVel
(=Vector3r::Zero())¶ Current angular velocity
-
blockedDOFs
¶ Degress of freedom where linear/angular velocity will be always constant (equal to zero, or to an user-defined value), regardless of applied force/torque. String that may contain ‘xyzXYZ’ (translations and rotations).
-
densityScaling
(=-1)¶ (auto-updated) see GlobalStiffnessTimeStepper::targetDt.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((State)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
displ
((State)arg1) → Vector3 :¶ Displacement from reference position (pos - refPos)
-
inertia
(=Vector3r::Zero())¶ Inertia of associated body, in local coordinate system.
-
isDamped
(=true)¶ Damping in NewtonIntegrator can be deactivated for individual particles by setting this variable to FALSE. E.g. damping is inappropriate for particles in free flight under gravity but it might still be applicable to other particles in the same simulation.
-
mass
(=0)¶ Mass of this body
-
numBrokenLinks
(=0)¶ Number of broken links (e.g. number of wires connected to the body which are broken). [-]
-
ori
¶ Current orientation.
-
pos
¶ Current position.
-
refOri
(=Quaternionr::Identity())¶ Reference orientation
-
refPos
(=Vector3r::Zero())¶ Reference position
-
rot
((State)arg1) → Vector3 :¶ Rotation from reference orientation (as rotation vector)
-
se3
(=Se3r(Vector3r::Zero(), Quaternionr::Identity()))¶ Position and orientation as one object.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vel
(=Vector3r::Zero())¶ Current linear velocity.
-
Material¶
-
class
yade.wrapper.
Material
(inherits Serializable)¶ Material properties of a body.
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
BubbleMat
(inherits Material → Serializable)¶ material for bubble interactions, for use with other Bubble classes
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
surfaceTension
(=0.07197)¶ The surface tension in the fluid surrounding the bubbles. The default value is that of water at 25 degrees Celcius.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
CohFrictMat
(inherits FrictMat → ElastMat → Material → Serializable)¶ Material description extending FrictMat with cohesive properties and rotational stiffnesses. For use e.g. with Law2_ScGeom6D_CohFrictPhys_CohesionMoment.
-
alphaKr
(=2.0)¶ Dimensionless rolling stiffness.
-
alphaKtw
(=2.0)¶ Dimensionless twist stiffness.
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
etaRoll
(=-1.)¶ Dimensionless rolling (aka ‘bending’) strength. If negative, rolling moment will be elastic.
-
etaTwist
(=-1.)¶ Dimensionless twisting strength. If negative, twist moment will be elastic.
-
fragile
(=true)¶ does cohesion disappear when contact strength is exceeded?
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
isCohesive
(=true)¶ Whether this body can form possibly cohesive interactions (if true and depending on other parameters such as Ip2_CohFrictMat_CohFrictMat_CohFrictPhys.setCohesionNow).
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
momentRotationLaw
(=false)¶ Use bending/twisting moment at contact. The contact may have moments only if both bodies have this flag true. See Law2_ScGeom6D_CohFrictPhys_CohesionMoment.always_use_moment_law for details.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
normalCohesion
(=-1)¶ Tensile strength, homogeneous to a pressure. If negative the normal force is purely elastic.
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
shearCohesion
(=-1)¶ Shear strength, homogeneous to a pressure. If negative the shear force is purely elastic.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
CohesiveDeformableElementMaterial
(inherits Material → Serializable)¶ Deformable Element Material.
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
CpmMat
(inherits FrictMat → ElastMat → Material → Serializable)¶ Concrete material, for use with other Cpm classes.
Note
Density is initialized to 4800 kgm⁻³automatically, which gives approximate 2800 kgm⁻³ on 0.5 density packing.
Concrete Particle Model (CPM)
CpmMat is particle material, Ip2_CpmMat_CpmMat_CpmPhys averages two particles’ materials, creating CpmPhys, which is then used in interaction resultion by Law2_ScGeom_CpmPhys_Cpm. CpmState is associated to CpmMat and keeps state defined on particles rather than interactions (such as number of completely damaged interactions).
The model is contained in externally defined macro CPM_MATERIAL_MODEL, which features damage in tension, plasticity in shear and compression and rate-dependence. For commercial reasons, rate-dependence and compression-plasticity is not present in reduced version of the model, used when CPM_MATERIAL_MODEL is not defined. The full model will be described in detail in my (Václav Šmilauer) thesis along with calibration procedures (rigidity, poisson’s ratio, compressive/tensile strength ratio, fracture energy, behavior under confinement, rate-dependent behavior).
Even the public model is useful enough to run simulation on concrete samples, such as uniaxial tension-compression test.
-
damLaw
(=1)¶ Law for damage evolution in uniaxial tension. 0 for linear stress-strain softening branch, 1 (default) for exponential damage evolution law
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
dmgRateExp
(=0)¶ Exponent for normal viscosity function. [-]
-
dmgTau
(=-1, deactivated if negative)¶ Characteristic time for normal viscosity. [s]
-
epsCrackOnset
(=NaN)¶ Limit elastic strain [-]
-
equivStrainShearContrib
(=0)¶ Coefficient of shear contribution to equivalent strain
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
isoPrestress
(=0)¶ Isotropic prestress of the whole specimen. [Pa]
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
neverDamage
(=false)¶ If true, no damage will occur (for testing only).
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
plRateExp
(=0)¶ Exponent for visco-plasticity function. [-]
-
plTau
(=-1, deactivated if negative)¶ Characteristic time for visco-plasticity. [s]
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
relDuctility
(=NaN)¶ relative ductility of bonds in normal direction
-
sigmaT
(=NaN)¶ Initial cohesion [Pa]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
DeformableElementMaterial
(inherits Material → Serializable)¶ Deformable Element Material.
-
density
(=1)¶ Density of the material.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
ElastMat
(inherits Material → Serializable)¶ Purely elastic material. The material parameters may have different meanings depending on the IPhysFunctor used : true Young and Poisson in Ip2_FrictMat_FrictMat_MindlinPhys, or contact stiffnesses in Ip2_FrictMat_FrictMat_FrictPhys.
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
FrictMat
(inherits ElastMat → Material → Serializable)¶ Elastic material with contact friction. See also ElastMat.
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
FrictMatCDM
(inherits FrictMat → ElastMat → Material → Serializable)¶ Material to be used for extended Hertz-Mindlin contact law. Normal direction: parameters for Conical Damage Model (Harkness et al. 2016, Suhr & Six 2017). Tangential direction: parameters for stress dependent interparticle friction coefficient (Suhr & Six 2016). Both models can be switched on/off separately.
-
alpha
(=1e-6)¶ [rad] angle of conical asperities, alpha in (0, pi/2)
-
c1
(=0.0)¶ [-] parameter of pressure dependent friction model c1, choose 0 for constant interparticle friction coefficient
-
c2
(=0.0)¶ [-] parameter of pressure dependent friction model c2, choose 0 for constant interparticle friction coefficient
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
sigmaMax
(=1e99)¶ >0 [Pa] max compressive strength of material, choose 1e99 to switch off conical damage model
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
FrictViscoMat
(inherits FrictMat → ElastMat → Material → Serializable)¶ Material for use with the FrictViscoPM classes
-
betan
(=0.)¶ Fraction of the viscous damping coefficient in normal direction equal to \(\frac{c_{n}}{C_{n,crit}}\).
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
InelastCohFrictMat
(inherits FrictMat → ElastMat → Material → Serializable)¶ -
alphaKr
(=2.0)¶ Dimensionless coefficient used for the rolling stiffness.
-
alphaKtw
(=2.0)¶ Dimensionless coefficient used for the twist stiffness.
-
compressionModulus
(=0.0)¶ Compresion elasticity modulus
-
creepBending
(=0.0)¶ Bending creeping coefficient. Usual values between 0 and 1.
-
creepTension
(=0.0)¶ Tension/compression creeping coefficient. Usual values between 0 and 1.
-
creepTwist
(=0.0)¶ Twist creeping coefficient. Usual values between 0 and 1.
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
epsilonMaxCompression
(=0.0)¶ Maximal plastic strain compression
-
epsilonMaxTension
(=0.0)¶ Maximal plastic strain tension
-
etaMaxBending
(=0.0)¶ Maximal plastic bending strain
-
etaMaxTwist
(=0.0)¶ Maximal plastic twist strain
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
nuBending
(=0.0)¶ Bending elastic stress limit
-
nuTwist
(=0.0)¶ Twist elastic stress limit
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
shearCohesion
(=0.0)¶ Shear elastic stress limit
-
shearModulus
(=0.0)¶ shear elasticity modulus
-
sigmaCompression
(=0.0)¶ Compression elastic stress limit
-
sigmaTension
(=0.0)¶ Tension elastic stress limit
-
tensionModulus
(=0.0)¶ Tension elasticity modulus
-
unloadBending
(=0.0)¶ Bending plastic unload coefficient. Usual values between 0 and +infinity.
-
unloadTension
(=0.0)¶ Tension/compression plastic unload coefficient. Usual values between 0 and +infinity.
-
unloadTwist
(=0.0)¶ Twist plastic unload coefficient. Usual values between 0 and +infinity.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
JCFpmMat
(inherits FrictMat → ElastMat → Material → Serializable)¶ Possibly jointed, cohesive frictional material, for use with other JCFpm classes
-
cohesion
(=0.)¶ Defines the maximum admissible tangential force in shear, for Fn=0, in the matrix (FsMax = cohesion * crossSection). [Pa]
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
jointCohesion
(=0.)¶ Defines the maximum admissible tangential force in shear, for Fn=0, on the joint surface. [Pa]
-
jointDilationAngle
(=0)¶ Defines the dilatancy of the joint surface (only valid for smooth contact logic). [rad]
-
jointFrictionAngle
(=-1)¶ Defines Coulomb friction on the joint surface. [rad]
-
jointNormalStiffness
(=0.)¶ Defines the normal stiffness on the joint surface. [Pa/m]
-
jointShearStiffness
(=0.)¶ Defines the shear stiffness on the joint surface. [Pa/m]
-
jointTensileStrength
(=0.)¶ Defines the maximum admissible normal force in traction on the joint surface. [Pa]
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
residualFrictionAngle
(=-1.)¶ Defines the residual friction angle (when contacts are not cohesive). residualFrictionAngle=frictionAngle if not specified. [rad]
-
tensileStrength
(=0.)¶ Defines the maximum admissible normal force in traction in the matrix (FnMax = tensileStrength * crossSection). [Pa]
-
type
(=0)¶ If particles of two different types interact, it will be with friction only (no cohesion).[-]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
LinCohesiveElasticMaterial
(inherits CohesiveDeformableElementMaterial → Material → Serializable)¶ Linear Isotropic Elastic material
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poissonratio
(=.33)¶ Poisson ratio. Initially aluminium.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
youngmodulus
(=.78e5)¶ Young’s modulus. Initially aluminium.
-
-
class
yade.wrapper.
LinCohesiveStiffPropDampElastMat
(inherits LinCohesiveElasticMaterial → CohesiveDeformableElementMaterial → Material → Serializable)¶ Elastic material with Rayleigh Damping.
-
alpha
(=0)¶ Mass propotional damping constant of Rayleigh Damping.
-
beta
(=0)¶ Stiffness propotional damping constant of Rayleigh Damping.
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poissonratio
(=.33)¶ Poisson ratio. Initially aluminium.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
youngmodulus
(=.78e5)¶ Young’s modulus. Initially aluminium.
-
-
class
yade.wrapper.
LinIsoElastMat
(inherits DeformableElementMaterial → Material → Serializable)¶ Linear Isotropic Elastic material
-
density
(=1)¶ Density of the material.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poissonratio
(=.33)¶ Poisson ratio. Initially aluminium.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
youngmodulus
(=.78e5)¶ Young’s modulus. Initially aluminium.
-
-
class
yade.wrapper.
LinIsoRayleighDampElastMat
(inherits LinIsoElastMat → DeformableElementMaterial → Material → Serializable)¶ Elastic material with Rayleigh Damping.
-
alpha
(=0)¶ Mass propotional damping constant of Rayleigh Damping.
-
beta
(=0)¶ Stiffness propotional damping constant of Rayleigh Damping.
-
density
(=1)¶ Density of the material.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poissonratio
(=.33)¶ Poisson ratio. Initially aluminium.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
youngmodulus
(=.78e5)¶ Young’s modulus. Initially aluminium.
-
-
class
yade.wrapper.
LudingMat
(inherits Material → Serializable)¶ Material for simple Luding`s model of contact [Luding2008] ,[Singh2013]_ .
-
G0
(=NaN)¶ Viscous damping
-
PhiF
(=NaN)¶ Dimensionless plasticity depth
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
frictionAngle
(=NaN)¶ Friction angle [rad]
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
k1
(=NaN)¶ Slope of loading plastic branch
-
kc
(=NaN)¶ Slope of irreversible, tensile adhesive branch
-
kp
(=NaN)¶ Slope of unloading and reloading limit elastic branch
-
ks
(=NaN)¶ Shear stiffness
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
MortarMat
(inherits FrictMat → ElastMat → Material → Serializable)¶ Material for mortar interface, used in Ip2_MortarMat_MortarMat_MortarPhys and Law2_ScGeom_MortarPhys_Lourenco. Default values according to
-
cohesion
(=1e6)¶ cohesion [Pa]
-
compressiveStrength
(=10e6)¶ compressiveStrength [Pa]
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
ellAspect
(=3)¶ aspect ratio of elliptical ‘cap’. Value >1 means the ellipse is longer along normal stress axis.
-
frictionAngle
(=.25)¶ Friction angle
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
neverDamage
(=false)¶ If true, interactions remain elastic regardless stresses
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poisson
(=1)¶ Shear to normal modulus ratio
-
tensileStrength
(=1e6)¶ tensileStrength [Pa]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ Normal elastic modulus [Pa]
-
-
class
yade.wrapper.
PartialSatMat
(inherits FrictMat → ElastMat → Material → Serializable)¶ Material used for PartialSatClayEngine. Necessary for the custom PartialSatState.
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
num
(=0)¶ Particle number
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
PolyhedraMat
(inherits FrictMat → ElastMat → Material → Serializable)¶ Elastic material with Coulomb friction.
-
IsSplitable
(=0)¶ To be splitted … or not
-
Wei_P
(=-1)¶ Weibull Formulation, failure probability, P, [Gladky2017].
-
Wei_S0
(=-1)¶ Weibull Formulation, Sigma0, Pa, (if negative - disabled), [Gladky2017]
-
Wei_V0
(=1e-9)¶ Weibull Formulation, V0, m^3, representative volume, [Gladky2017].
-
Wei_m
(=-1)¶ Weibull Formulation, Weibull modulus, m, (if negative - disabled), [Gladky2017]
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
sigmaCD
(=-1)¶ Mohr-Coulomb failure criterium SigmaCD, Pa, maximal compressive strength (if negative - disabled), [Gladky2017]
-
sigmaCZ
(=-1)¶ Mohr-Coulomb failure criterium SigmaCZ, Pa, maximal tensile strength (if negative - disabled), [Gladky2017]
-
strength
(=100)¶ Stress at which polyhedra of volume 4/3*pi [mm] breaks.
-
strengthTau
(=-1)¶ Tangential stress at which polyhedra of volume 4/3*pi [mm] breaks.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e8)¶ Young modulus
-
-
class
yade.wrapper.
ViscElCapMat
(inherits ViscElMat → FrictMat → ElastMat → Material → Serializable)¶ Material for extended viscoelastic model of contact with capillary parameters.
-
Capillar
(=false)¶ True, if capillar forces need to be added.
-
CapillarType
(="")¶ Different types of capillar interaction: Willett_numeric, Willett_analytic [Willett2000] , Weigert [Weigert1999] , Rabinovich [Rabinov2005] , Lambert (simplified, corrected Rabinovich model) [Lambert2008]
-
Vb
(=0.0)¶ Liquid bridge volume [m^3]
-
cn
(=NaN)¶ Normal viscous constant. Attention, this parameter cannot be set if tc, en or es is defined!
-
cs
(=NaN)¶ Shear viscous constant. Attention, this parameter cannot be set if tc, en or es is defined!
-
dcap
(=0.0)¶ Damping coefficient for the capillary phase [-]
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
en
(=NaN)¶ Restitution coefficient in normal direction
-
et
(=NaN)¶ Restitution coefficient in tangential direction
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
gamma
(=0.0)¶ Surface tension [N/m]
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
kn
(=NaN)¶ Normal elastic stiffness. Attention, this parameter cannot be set if tc, en or es is defined!
-
ks
(=NaN)¶ Shear elastic stiffness. Attention, this parameter cannot be set if tc, en or es is defined!
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
lubrication
(=false)¶ option to apply lubrication forces when material is defined from young, poisson and en (restitution coefficient).
-
mR
(=0.0)¶ Rolling resistance, see [Zhou1999536].
-
mRtype
(=1)¶ Rolling resistance type, see [Zhou1999536]. mRtype=1 - equation (3) in [Zhou1999536]; mRtype=2 - equation (4) in [Zhou1999536].
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
roughnessScale
(=1e-3)¶ if lubrication is activated, roughness scale considered for the particles to evaluate the effective restitution coefficient.
-
tc
(=NaN)¶ Contact time
-
theta
(=0.0)¶ Contact angle [°]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
viscoDyn
(=1e-3)¶ if lubrication is activated, surrounding fluid dynamic viscosity considered to evaluate the effective restitution coefficient as a function of the local Stokes number of the collision.
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
ViscElMat
(inherits FrictMat → ElastMat → Material → Serializable)¶ Material for simple viscoelastic model of contact from analytical solution of a pair spheres interaction problem [Pournin2001] .
-
cn
(=NaN)¶ Normal viscous constant. Attention, this parameter cannot be set if tc, en or es is defined!
-
cs
(=NaN)¶ Shear viscous constant. Attention, this parameter cannot be set if tc, en or es is defined!
-
density
(=1000)¶ Density of the material [kg/m³]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
en
(=NaN)¶ Restitution coefficient in normal direction
-
et
(=NaN)¶ Restitution coefficient in tangential direction
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
kn
(=NaN)¶ Normal elastic stiffness. Attention, this parameter cannot be set if tc, en or es is defined!
-
ks
(=NaN)¶ Shear elastic stiffness. Attention, this parameter cannot be set if tc, en or es is defined!
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
lubrication
(=false)¶ option to apply lubrication forces when material is defined from young, poisson and en (restitution coefficient).
-
mR
(=0.0)¶ Rolling resistance, see [Zhou1999536].
-
mRtype
(=1)¶ Rolling resistance type, see [Zhou1999536]. mRtype=1 - equation (3) in [Zhou1999536]; mRtype=2 - equation (4) in [Zhou1999536].
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
roughnessScale
(=1e-3)¶ if lubrication is activated, roughness scale considered for the particles to evaluate the effective restitution coefficient.
-
tc
(=NaN)¶ Contact time
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
viscoDyn
(=1e-3)¶ if lubrication is activated, surrounding fluid dynamic viscosity considered to evaluate the effective restitution coefficient as a function of the local Stokes number of the collision.
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
-
class
yade.wrapper.
WireMat
(inherits FrictMat → ElastMat → Material → Serializable)¶ Material for use with the Wire classes. In conjunction with the corresponding functors it can be used to model steel wire meshes [Thoeni2014], geotextiles [Cheng2016] and more.
-
as
(=0.)¶ Cross-section area of a single wire used to transform stress into force. [m²]
-
density
(=1000)¶ Density of the material [kg/m³]
-
diameter
(=0.0027)¶ Diameter of the single wire in [m] (the diameter is used to compute the cross-section area of the wire).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Material)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
frictionAngle
(=.5)¶ Contact friction angle (in radians). Hint : use ‘radians(degreesValue)’ in python scripts.
-
id
(=-1, not shared)¶ Numeric id of this material; is non-negative only if this Material is shared (i.e. in O.materials), -1 otherwise. This value is set automatically when the material is inserted to the simulation via O.materials.append. (This id was necessary since before boost::serialization was used, shared pointers were not tracked properly; it might disappear in the future)
-
isDoubleTwist
(=false)¶ Type of the mesh. If true two particles of the same material which body ids differ by one will be considered as double-twisted interaction.
-
label
(=uninitalized)¶ Textual identifier for this material; can be used for shared materials lookup in MaterialContainer.
-
lambdaEps
(=0.47)¶ Parameter between 0 and 1 to reduce strain at failure of a double-twisted wire (as used by [Bertrand2008]). [-]
-
lambdaF
(=1.0)¶ Parameter between 0 and 1 introduced by [Thoeni2013] which defines where the shifted force-displacement curve intersects with the new initial stiffness: \(F^*=\lambda_F F_{\text{elastic}}\). [-]
-
lambdak
(=0.73)¶ Parameter between 0 and 1 to compute the elastic stiffness of a double-twisted wire (as used by [Bertrand2008]): \(k^D=2(\lambda_k k_h + (1-\lambda_k)k^S)\). [-]
-
lambdau
(=0.2)¶ Parameter between 0 and 1 introduced by [Thoeni2013] which defines the maximum shift of the force-displacement curve in order to take an additional initial elongation (e.g. wire distortion/imperfections, slipping, system flexibility) into account: \(\Delta l^*=\lambda_u l_0 \text{rnd(seed)}\). [-]
-
newAssocState
((Material)arg1) → State :¶ Return new State instance, which is associated with this Material. Some materials have special requirement on Body::state type and calling this function when the body is created will ensure that they match. (This is done automatically if you use utils.sphere, … functions from python).
-
poisson
(=.25)¶ Poisson’s ratio or the ratio between shear and normal stiffness [-]. It has different meanings depending on the Ip functor.
-
seed
(=12345)¶ Integer used to initialize the random number generator for the calculation of the distortion. If the integer is equal to 0 a internal seed number based on the time is computed. [-]
-
strainStressValues
(=uninitalized)¶ Piecewise linear definition of the stress-strain curve by set of points (strain[-]>0,stress[Pa]>0) for one single wire. Tension only is considered and the point (0,0) is not needed! NOTE: Vector needs to be initialized!
-
strainStressValuesDT
(=uninitalized)¶ Piecewise linear definition of the stress-strain curve by set of points (strain[-]>0,stress[Pa]>0) for the double twist. Tension only is considered and the point (0,0) is not needed! If this value is given the calculation will be based on two different stress-strain curves without considering the parameter introduced by [Bertrand2008] (see [Thoeni2013]).
-
type
¶ Three different types are considered:
0 Corresponds to Bertrand’s approach (see [Bertrand2008]): only one stress-strain curve is used 1 New approach: two separate stress-strain curves can be used (see [Thoeni2013]) 2 New approach with stochastically distorted contact model: two separate stress-strain curves with changed initial stiffness and horizontal shift (shift is random if \(\text{seed}\geq0\), for more details see [Thoeni2013]) By default the type is 0.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
young
(=1e9)¶ elastic modulus [Pa]. It has different meanings depending on the Ip functor.
-
Bound¶
-
class
yade.wrapper.
Bound
(inherits Serializable)¶ Object bounding part of space taken by associated body; might be larger, used to optimalize collision detection
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering this object
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Bound)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
lastUpdateIter
(=0)¶ record iteration of last reference position update (auto-updated)
-
refPos
(=Vector3r(NaN, NaN, NaN))¶ Reference position, updated at current body position each time the bound dispatcher update bounds (auto-updated)
-
sweepLength
(=0)¶ The length used to increase the bounding boxe size, can be adjusted on the basis of previous displacement if BoundDispatcher::targetInterv>0. (auto-updated)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
Aabb
(inherits Bound → Serializable)¶ Axis-aligned bounding box, for use with InsertionSortCollider. (This class is quasi-redundant since min,max are already contained in Bound itself. That might change at some point, though.)
-
color
(=Vector3r(1, 1, 1))¶ Color for rendering this object
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((Bound)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
lastUpdateIter
(=0)¶ record iteration of last reference position update (auto-updated)
-
refPos
(=Vector3r(NaN, NaN, NaN))¶ Reference position, updated at current body position each time the bound dispatcher update bounds (auto-updated)
-
sweepLength
(=0)¶ The length used to increase the bounding boxe size, can be adjusted on the basis of previous displacement if BoundDispatcher::targetInterv>0. (auto-updated)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
Interactions¶
Interaction¶
-
class
yade.wrapper.
Interaction
(inherits Serializable)¶ Interaction between pair of bodies.
-
cellDist
¶ Distance of bodies in cell size units, if using periodic boundary conditions; id2 is shifted by this number of cells from its State::pos coordinates for this interaction to exist. Assigned by the collider.
Warning
(internal) cellDist must survive Interaction::reset(), it is only initialized in ctor. Interaction that was cancelled by the constitutive law, was reset() and became only potential must have the period information if the geometric functor again makes it real. Good to know after few days of debugging that :-)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
geom
(=uninitalized)¶ Geometry part of the interaction.
-
isActive
¶ True if this interaction is active. Otherwise the forces from this interaction will not be taken into account. True by default.
-
iterBorn
(=-1)¶ Step number at which the interaction was added to simulation.
-
iterMadeReal
(=-1)¶ Step number at which the interaction was fully (in the sense of geom and phys) created. (Should be touched only by IPhysDispatcher and InteractionLoop, therefore they are made friends of Interaction
-
phys
(=uninitalized)¶ Physical (material) part of the interaction.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
IGeom¶
-
class
yade.wrapper.
IGeom
(inherits Serializable)¶ Geometrical configuration of interaction
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
ChCylGeom6D
(inherits ScGeom6D → ScGeom → GenericSpheresContact → IGeom → Serializable)¶ Test
-
bending
(=Vector3r::Zero())¶ Bending at contact as a vector defining axis of rotation and angle (angle=norm).
-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
incidentVel
((ScGeom)arg1, (Interaction)i[, (bool)avoidGranularRatcheting=True]) → Vector3 :¶ Return incident velocity of the interaction (see also Ig2_Sphere_Sphere_ScGeom.avoidGranularRatcheting for explanation of the ratcheting argument).
-
initialOrientation1
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Orientation of body 1 one at initialisation time (auto-updated)
-
initialOrientation2
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Orientation of body 2 one at initialisation time (auto-updated)
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
penetrationDepth
(=NaN)¶ Penetration distance of spheres (positive if overlapping)
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
relAngVel
((ScGeom)arg1, (Interaction)i) → Vector3 :¶ Return relative angular velocity of the interaction.
-
shearInc
(=Vector3r::Zero())¶ Shear displacement increment in the last step
-
twist
(=0)¶ Elastic twist angle (around normal axis) of the contact.
-
twistCreep
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Stored creep, substracted from total relative rotation for computation of elastic moment (auto-updated)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
CylScGeom
(inherits ScGeom → GenericSpheresContact → IGeom → Serializable)¶ Geometry of a cylinder-sphere contact.
-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
end
(=Vector3r::Zero())¶ position of 2nd node (auto-updated)
-
id3
(=0)¶ id of next chained cylinder (auto-updated)
-
incidentVel
((ScGeom)arg1, (Interaction)i[, (bool)avoidGranularRatcheting=True]) → Vector3 :¶ Return incident velocity of the interaction (see also Ig2_Sphere_Sphere_ScGeom.avoidGranularRatcheting for explanation of the ratcheting argument).
-
isDuplicate
(=0)¶ this flag is turned true (1) automatically if the contact is shared between two chained cylinders. A duplicated interaction will be skipped once by the constitutive law, so that only one contact at a time is effective. If isDuplicate=2, it means one of the two duplicates has no longer geometric interaction, and should be erased by the constitutive laws.
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
onNode
(=false)¶ contact on node?
-
penetrationDepth
(=NaN)¶ Penetration distance of spheres (positive if overlapping)
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
relAngVel
((ScGeom)arg1, (Interaction)i) → Vector3 :¶ Return relative angular velocity of the interaction.
-
relPos
(=0)¶ position of the contact on the cylinder (0: node-, 1:node+) (auto-updated)
-
shearInc
(=Vector3r::Zero())¶ Shear displacement increment in the last step
-
start
(=Vector3r::Zero())¶ position of 1st node (auto-updated)
-
trueInt
(=-1)¶ Defines the body id of the cylinder where the contact is real, when CylScGeom::isDuplicate>0.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
CylScGeom6D
(inherits ScGeom6D → ScGeom → GenericSpheresContact → IGeom → Serializable)¶ Class representing geometry of two bodies in contact. The contact has 6 DOFs (normal, 2×shear, twist, 2xbending) and uses ScGeom incremental algorithm for updating shear.
-
bending
(=Vector3r::Zero())¶ Bending at contact as a vector defining axis of rotation and angle (angle=norm).
-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
end
(=Vector3r::Zero())¶ position of 2nd node (auto-updated)
-
id3
(=0)¶ id of next chained cylinder (auto-updated)
-
incidentVel
((ScGeom)arg1, (Interaction)i[, (bool)avoidGranularRatcheting=True]) → Vector3 :¶ Return incident velocity of the interaction (see also Ig2_Sphere_Sphere_ScGeom.avoidGranularRatcheting for explanation of the ratcheting argument).
-
initialOrientation1
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Orientation of body 1 one at initialisation time (auto-updated)
-
initialOrientation2
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Orientation of body 2 one at initialisation time (auto-updated)
-
isDuplicate
(=0)¶ this flag is turned true (1) automatically if the contact is shared between two chained cylinders. A duplicated interaction will be skipped once by the constitutive law, so that only one contact at a time is effective. If isDuplicate=2, it means one of the two duplicates has no longer geometric interaction, and should be erased by the constitutive laws.
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
onNode
(=false)¶ contact on node?
-
penetrationDepth
(=NaN)¶ Penetration distance of spheres (positive if overlapping)
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
relAngVel
((ScGeom)arg1, (Interaction)i) → Vector3 :¶ Return relative angular velocity of the interaction.
-
relPos
(=0)¶ position of the contact on the cylinder (0: node-, 1:node+) (auto-updated)
-
shearInc
(=Vector3r::Zero())¶ Shear displacement increment in the last step
-
start
(=Vector3r::Zero())¶ position of 1st node (auto-updated)
-
trueInt
(=-1)¶ Defines the body id of the cylinder where the contact is real, when CylScGeom::isDuplicate>0.
-
twist
(=0)¶ Elastic twist angle (around normal axis) of the contact.
-
twistCreep
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Stored creep, substracted from total relative rotation for computation of elastic moment (auto-updated)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
GenericSpheresContact
(inherits IGeom → Serializable)¶ Class uniting ScGeom and L3Geom, for the purposes of GlobalStiffnessTimeStepper. (It might be removed in the future). Do not use this class directly.
-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
GridCoGridCoGeom
(inherits ScGeom → GenericSpheresContact → IGeom → Serializable)¶ Geometry of a GridConnection-GridConnection contact.
-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
incidentVel
((ScGeom)arg1, (Interaction)i[, (bool)avoidGranularRatcheting=True]) → Vector3 :¶ Return incident velocity of the interaction (see also Ig2_Sphere_Sphere_ScGeom.avoidGranularRatcheting for explanation of the ratcheting argument).
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
penetrationDepth
(=NaN)¶ Penetration distance of spheres (positive if overlapping)
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
relAngVel
((ScGeom)arg1, (Interaction)i) → Vector3 :¶ Return relative angular velocity of the interaction.
-
relPos1
(=0)¶ position of the contact on the first connection (0: node-, 1:node+) (auto-updated)
-
relPos2
(=0)¶ position of the contact on the first connection (0: node-, 1:node+) (auto-updated)
-
shearInc
(=Vector3r::Zero())¶ Shear displacement increment in the last step
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
GridNodeGeom6D
(inherits ScGeom6D → ScGeom → GenericSpheresContact → IGeom → Serializable)¶ Geometry of a GridNode-GridNode contact. Inherits almost everything from ScGeom6D.
-
bending
(=Vector3r::Zero())¶ Bending at contact as a vector defining axis of rotation and angle (angle=norm).
-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
incidentVel
((ScGeom)arg1, (Interaction)i[, (bool)avoidGranularRatcheting=True]) → Vector3 :¶ Return incident velocity of the interaction (see also Ig2_Sphere_Sphere_ScGeom.avoidGranularRatcheting for explanation of the ratcheting argument).
-
initialOrientation1
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Orientation of body 1 one at initialisation time (auto-updated)
-
initialOrientation2
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Orientation of body 2 one at initialisation time (auto-updated)
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
penetrationDepth
(=NaN)¶ Penetration distance of spheres (positive if overlapping)
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
relAngVel
((ScGeom)arg1, (Interaction)i) → Vector3 :¶ Return relative angular velocity of the interaction.
-
shearInc
(=Vector3r::Zero())¶ Shear displacement increment in the last step
-
twist
(=0)¶ Elastic twist angle (around normal axis) of the contact.
-
twistCreep
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Stored creep, substracted from total relative rotation for computation of elastic moment (auto-updated)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
L3Geom
(inherits GenericSpheresContact → IGeom → Serializable)¶ Geometry of contact given in local coordinates with 3 degress of freedom: normal and two in shear plane. [experimental]
-
F
(=Vector3r::Zero())¶ Applied force in local coordinates [debugging only, will be removed]
-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
trsf
(=Matrix3r::Identity())¶ Transformation (rotation) from global to local coordinates. (the translation part is in GenericSpheresContact.contactPoint)
-
u
(=Vector3r::Zero())¶ Displacement components, in local coordinates. (auto-updated)
-
u0
¶ Zero displacement value; u0 should be always subtracted from the geometrical displacement u computed by appropriate IGeomFunctor, resulting in u. This value can be changed for instance
- by IGeomFunctor, e.g. to take in account large shear displacement value unrepresentable by underlying geomeric algorithm based on quaternions)
- by LawFunctor, to account for normal equilibrium position different from zero geometric overlap (set once, just after the interaction is created)
- by LawFunctor to account for plastic slip.
Note
Never set an absolute value of u0, only increment, since both IGeomFunctor and LawFunctor use it. If you need to keep track of plastic deformation, store it in IPhys isntead (this might be changed: have u0 for LawFunctor exclusively, and a separate value stored (when that is needed) inside classes deriving from L3Geom.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
L6Geom
(inherits L3Geom → GenericSpheresContact → IGeom → Serializable)¶ Geometric of contact in local coordinates with 6 degrees of freedom. [experimental]
-
F
(=Vector3r::Zero())¶ Applied force in local coordinates [debugging only, will be removed]
-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
phi
(=Vector3r::Zero())¶ Rotation components, in local coordinates. (auto-updated)
-
phi0
(=Vector3r::Zero())¶ Zero rotation, should be always subtracted from phi to get the value. See L3Geom.u0.
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
trsf
(=Matrix3r::Identity())¶ Transformation (rotation) from global to local coordinates. (the translation part is in GenericSpheresContact.contactPoint)
-
u
(=Vector3r::Zero())¶ Displacement components, in local coordinates. (auto-updated)
-
u0
¶ Zero displacement value; u0 should be always subtracted from the geometrical displacement u computed by appropriate IGeomFunctor, resulting in u. This value can be changed for instance
- by IGeomFunctor, e.g. to take in account large shear displacement value unrepresentable by underlying geomeric algorithm based on quaternions)
- by LawFunctor, to account for normal equilibrium position different from zero geometric overlap (set once, just after the interaction is created)
- by LawFunctor to account for plastic slip.
Note
Never set an absolute value of u0, only increment, since both IGeomFunctor and LawFunctor use it. If you need to keep track of plastic deformation, store it in IPhys isntead (this might be changed: have u0 for LawFunctor exclusively, and a separate value stored (when that is needed) inside classes deriving from L3Geom.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
MultiScGeom
(inherits IGeom → Serializable)¶ A set of ScGeom for describing the kinematics of an interaction with multiple contact points between two LevelSet bodies, as a set of ScGeom items in contacts. To combine with MultiFrictPhys and associated classes.
-
contacts
(=uninitalized)¶ The actual list of ScGeom items corresponding to the different contact points.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
nodesIds
(=uninitalized)¶ List of surface nodes (on id1 if that body is smaller – or equal – in volume, or id2 otherwise) making contacts. Contact point for a node of index nodesIds[i] has kinematic properties stored in contacts[i]. Should be equal to MultiFrictPhys.nodesIds by design
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
PolyhedraGeom
(inherits IGeom → Serializable)¶ Geometry of interaction between 2 Polyhedra, including volumetric characteristics
-
contactPoint
(=Vector3r::Zero())¶ Contact point (global coords), centroid of the overlapping polyhedron
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
equivalentCrossSection
(=NaN)¶ Cross-section area of the overlap (perpendicular to the normal) - not used
-
equivalentPenetrationDepth
(=NaN)¶ volume / equivalentCrossSection - not used
-
normal
(=Vector3r::Zero())¶ Normal direction of the interaction
-
orthonormal_axis
(=Vector3r::Zero())¶
-
penetrationVolume
(=NaN)¶ Volume of overlap [m³]
-
shearInc
(=Vector3r::Zero())¶ Shear displacement increment in the last step
-
twist_axis
(=Vector3r::Zero())¶
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
ScGeom
(inherits GenericSpheresContact → IGeom → Serializable)¶ Class representing geometry of a contact point between two bodies. It is more general than sphere-sphere contact even though it is primarily focused on spheres contact interactions (reason for the ‘Sc’ naming); it is also used for representing contacts of a Sphere with non-spherical bodies (Facet, Plane, Box, ChainedCylinder), or between two non-spherical bodies (ChainedCylinder). The contact has 3 DOFs (normal and 2×shear) and uses incremental algorithm for updating shear.
We use symbols \(\vec{x}\), \(\vec{v}\), \(\vec{\omega}\) respectively for position, linear and angular velocities (all in global coordinates) and \(r\) for particles radii; subscripted with 1 or 2 to distinguish 2 spheres in contact. Then we define branch length and unit contact normal
\[l=||\vec{x}_2-\vec{x}_1||, \vec{n}=\frac{\vec{x}_2-\vec{x}_1}{||\vec{x}_2-\vec{x}_1||}\]The relative velocity of the spheres is then
\[\vec{v}_{12}=\frac{r_1+r_2}{l}(\vec{v}_2-\vec{v}_1) -(r_2 \vec{\omega}_2 + r_1\vec{\omega}_1)\times\vec{n}\]where the fraction multiplying translational velocities is to make the definition objective and avoid ratcheting effects (see Ig2_Sphere_Sphere_ScGeom.avoidGranularRatcheting). The shear component is
\[\vec{v}_{12}^s=\vec{v}_{12}-(\vec{n}\cdot\vec{v}_{12})\vec{n}.\]Tangential displacement increment over last step then reads
\[\Delta\vec{x}_{12}^s=\Delta t \vec{v}_{12}^s.\]-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
incidentVel
((ScGeom)arg1, (Interaction)i[, (bool)avoidGranularRatcheting=True]) → Vector3 :¶ Return incident velocity of the interaction (see also Ig2_Sphere_Sphere_ScGeom.avoidGranularRatcheting for explanation of the ratcheting argument).
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
penetrationDepth
(=NaN)¶ Penetration distance of spheres (positive if overlapping)
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
relAngVel
((ScGeom)arg1, (Interaction)i) → Vector3 :¶ Return relative angular velocity of the interaction.
-
shearInc
(=Vector3r::Zero())¶ Shear displacement increment in the last step
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
ScGeom6D
(inherits ScGeom → GenericSpheresContact → IGeom → Serializable)¶ Class representing geometry of two bodies in contact. The contact has 6 DOFs (normal, 2×shear, twist, 2xbending) and uses ScGeom incremental algorithm for updating shear.
-
bending
(=Vector3r::Zero())¶ Bending at contact as a vector defining axis of rotation and angle (angle=norm).
-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
incidentVel
((ScGeom)arg1, (Interaction)i[, (bool)avoidGranularRatcheting=True]) → Vector3 :¶ Return incident velocity of the interaction (see also Ig2_Sphere_Sphere_ScGeom.avoidGranularRatcheting for explanation of the ratcheting argument).
-
initialOrientation1
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Orientation of body 1 one at initialisation time (auto-updated)
-
initialOrientation2
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Orientation of body 2 one at initialisation time (auto-updated)
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
penetrationDepth
(=NaN)¶ Penetration distance of spheres (positive if overlapping)
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
relAngVel
((ScGeom)arg1, (Interaction)i) → Vector3 :¶ Return relative angular velocity of the interaction.
-
shearInc
(=Vector3r::Zero())¶ Shear displacement increment in the last step
-
twist
(=0)¶ Elastic twist angle (around normal axis) of the contact.
-
twistCreep
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Stored creep, substracted from total relative rotation for computation of elastic moment (auto-updated)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
ScGridCoGeom
(inherits ScGeom6D → ScGeom → GenericSpheresContact → IGeom → Serializable)¶ Geometry of a GridConnection-Sphere contact.
-
bending
(=Vector3r::Zero())¶ Bending at contact as a vector defining axis of rotation and angle (angle=norm).
-
contactPoint
(=uninitalized)¶ some reference point for the interaction (usually in the middle). (auto-computed)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
incidentVel
((ScGeom)arg1, (Interaction)i[, (bool)avoidGranularRatcheting=True]) → Vector3 :¶ Return incident velocity of the interaction (see also Ig2_Sphere_Sphere_ScGeom.avoidGranularRatcheting for explanation of the ratcheting argument).
-
initialOrientation1
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Orientation of body 1 one at initialisation time (auto-updated)
-
initialOrientation2
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Orientation of body 2 one at initialisation time (auto-updated)
-
isDuplicate
(=0)¶ this flag is turned true (1) automatically if the contact is shared between two Connections. A duplicated interaction will be skipped once by the constitutive law, so that only one contact at a time is effective. If isDuplicate=2, it means one of the two duplicates has no longer geometric interaction, and should be erased by the constitutive laws.
-
normal
(=uninitalized)¶ Unit vector oriented along the interaction, from particle #1, towards particle #2. (auto-updated)
-
penetrationDepth
(=NaN)¶ Penetration distance of spheres (positive if overlapping)
-
refR1
(=uninitalized)¶ Reference radius of particle #1. (auto-computed)
-
refR2
(=uninitalized)¶ Reference radius of particle #2. (auto-computed)
-
relAngVel
((ScGeom)arg1, (Interaction)i) → Vector3 :¶ Return relative angular velocity of the interaction.
-
relPos
(=0)¶ position of the contact on the connection (0: node-, 1:node+) (auto-updated)
-
shearInc
(=Vector3r::Zero())¶ Shear displacement increment in the last step
-
trueInt
(=-1)¶ Defines the body id of the GridConnection where the contact is real, when ScGridCoGeom::isDuplicate>0.
-
twist
(=0)¶ Elastic twist angle (around normal axis) of the contact.
-
twistCreep
(=Quaternionr(1.0, 0.0, 0.0, 0.0))¶ Stored creep, substracted from total relative rotation for computation of elastic moment (auto-updated)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
weight
(=Vector3r(0, 0, 0))¶ barycentric coordinates of the projection point (auto-updated)
-
-
class
yade.wrapper.
TTetraGeom
(inherits IGeom → Serializable)¶ Geometry of interaction between 2 tetrahedra, including volumetric characteristics
-
contactPoint
(=uninitalized)¶ Contact point (global coords)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
equivalentCrossSection
(=NaN)¶ Cross-section of the overlap (perpendicular to the axis of least inertia
-
equivalentPenetrationDepth
(=NaN)¶ ??
-
maxPenetrationDepthA
(=NaN)¶ ??
-
maxPenetrationDepthB
(=NaN)¶ ??
-
normal
(=uninitalized)¶ Normal of the interaction, directed in the sense of least inertia of the overlap volume
-
penetrationVolume
(=NaN)¶ Volume of overlap [m³]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
TTetraSimpleGeom
(inherits IGeom → Serializable)¶ EXPERIMENTAL. Geometry of interaction between 2 tetrahedra
-
contactPoint
(=uninitalized)¶ Contact point (global coords)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
flag
(=0)¶ TODO
-
normal
(=uninitalized)¶ Normal of the interaction TODO
-
penetrationVolume
(=NaN)¶ Volume of overlap [m³]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
VolumeGeom
(inherits IGeom → Serializable)¶ Geometry of the interaction between two LevelSet bodies when using volume-based interactions. Will soon become the general class for volume interaction, such that it works for polyhedra as well.
-
averagePenetrationDepth
(=NaN)¶ penetrationVolume / contactArea.
-
contactArea
(=NaN)¶ Contact area perpendicular to the normal.
-
contactPoint
(=Vector3r::Zero())¶ Contact point (global coordinates), centroid of the penetration volume.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IGeom)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
normal
(=Vector3r::Zero())¶ Normal direction of the interaction.
-
orthonormal_axis
(=Vector3r::Zero())¶
-
penetrationVolume
(=NaN)¶ Volume of the overlap or penetrating region.
-
shearInc
(=Vector3r::Zero())¶ Shear displacement increment in the last step.
-
twist_axis
(=Vector3r::Zero())¶
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
IPhys¶
-
class
yade.wrapper.
IPhys
(inherits Serializable)¶ Physical (material) properties of interaction.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
BubblePhys
(inherits IPhys → Serializable)¶ Physics of bubble-bubble interactions, for use with BubbleMat
-
Dmax
(=NaN)¶ Maximum penetrationDepth of the bubbles before the force displacement curve changes to an artificial exponential curve. Setting this value will have no effect. See Law2_ScGeom_BubblePhys_Bubble::pctMaxForce for more information
-
static
computeForce
((float)arg1, (float)arg2, (float)arg3, (int)arg4, (float)arg5, (float)arg6, (float)arg7, (BubblePhys)arg8) → float :¶ Computes the normal force acting between the two interacting bubbles using the Newton-Rhapson method
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
fN
(=NaN)¶ Contact normal force
-
newtonIter
(=50)¶ Maximum number of force iterations allowed
-
newtonTol
(=1e-6)¶ Convergence criteria for force iterations
-
normalForce
(=Vector3r::Zero())¶ Normal force
-
rAvg
(=NaN)¶ Average radius of the two interacting bubbles
-
surfaceTension
(=NaN)¶ Surface tension of the surrounding liquid
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
CapillaryMindlinPhysDelaunay
(inherits MindlinPhys → RotStiffFrictPhys → FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ An extended version of ̀(iPhysType), adding capillary data for CapillarityEngine.
-
Delta1
(=0.)¶ Defines the surface area wetted by the meniscus on the smallest grains of radius R1 (R1<R2)
-
Delta2
(=0.)¶ Defines the surface area wetted by the meniscus on the biggest grains of radius R2 (R1<R2)
-
Fs
(=Vector2r::Zero())¶ Shear force in local axes (computed incrementally)
-
SInterface
(=0.)¶ Fluid-Gaz Interfacial area
-
adhesionForce
(=0.0)¶ Force of adhesion as predicted by DMT
-
arcLength
(=0.)¶ Arc Length of the Fluid-Gaz Interface
-
beta
(=0.0)¶ Auxiliary parameter used in the viscous damping model of [Mueller2011]
-
betan
(=0.0)¶ Normal Damping Ratio. Fraction of the viscous damping coefficient (normal direction) equal to \(\frac{c_{n}}{C_{n,crit}}\).
-
betas
(=0.0)¶ Shear Damping Ratio. Fraction of the viscous damping coefficient (shear direction) equal to \(\frac{c_{s}}{C_{s,crit}}\).
-
capillaryPressure
(=0.)¶ Value of the capillary pressure Uc defines as Ugas-Uliquid
-
computeBridge
(=true)¶ If true, capillary bridge will be computed if not it will be ignored.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
fCap
(=Vector3r::Zero())¶ Capillary Force produces by the presence of the meniscus
-
fusionNumber
(=0.)¶ Indicates the number of meniscii that overlap with this one
-
initD
(=0)¶ initial penetration distance, used for crackaperture estimate
-
isAdhesive
(=false)¶ bool to identify if the contact is adhesive, that is to say if the contact force is attractive
-
isBroken
(=false)¶ If true, capillary force is zero and liquid bridge is inactive.
-
isSliding
(=false)¶ check if the contact is sliding (useful to calculate the ratio of sliding contacts)
-
kn
(=0)¶ Normal stiffness
-
kno
(=0.0)¶ Constant value in the formulation of the normal stiffness
-
kr
(=0)¶ rotational stiffness [N.m/rad]
-
ks
(=0)¶ Shear stiffness
-
kso
(=0.0)¶ Constant value in the formulation of the tangential stiffness
-
ktw
(=0)¶ twist stiffness [N.m/rad]
-
maxBendPl
(=0.0)¶ Coefficient to determine the maximum plastic moment to apply at the contact
-
meniscus
(=false)¶ Presence of a meniscus if true
-
momentBend
(=Vector3r::Zero())¶ Artificial bending moment to provide rolling resistance in order to account for some degree of interlocking between particles
-
momentTwist
(=Vector3r::Zero())¶ Artificial twisting moment (no plastic condition can be applied at the moment)
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
normalViscous
(=Vector3r::Zero())¶ Normal viscous component
-
prevU
(=Vector3r::Zero())¶ Previous local displacement; only used with Law2_L3Geom_FrictPhys_HertzMindlin.
-
radius
(=NaN)¶ Contact radius (only computed with Law2_ScGeom_MindlinPhys_Mindlin::calcEnergy)
-
shearElastic
(=Vector3r::Zero())¶ Total elastic shear force
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearViscous
(=Vector3r::Zero())¶ Shear viscous component
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
usElastic
(=Vector3r::Zero())¶ Total elastic shear displacement (only elastic part)
-
usTotal
(=Vector3r::Zero())¶ Total elastic shear displacement (elastic+plastic part)
-
vMeniscus
(=0.)¶ Volume of the menicus
-
-
class
yade.wrapper.
CapillaryPhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ Physics (of interaction) for Law2_ScGeom_CapillaryPhys_Capillarity.
-
Delta1
(=0.)¶ Defines the surface area wetted by the meniscus on the smallest grains of radius R1 (R1<R2)
-
Delta2
(=0.)¶ Defines the surface area wetted by the meniscus on the biggest grains of radius R2 (R1<R2)
-
capillaryPressure
(=0.)¶ Value of the capillary pressure Uc. Defined as Ugas-Uliquid, obtained from corresponding Law2 parameter
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
fCap
(=Vector3r::Zero())¶ Capillary force produced by the presence of the meniscus. This is the force acting on particle #2
-
fusionNumber
(=0.)¶ Indicates the number of meniscii that overlap with this one
-
isBroken
(=false)¶ Might be set to true by the user to make liquid bridge inactive (capillary force is zero)
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
meniscus
(=false)¶ True when a meniscus with a non-zero liquid volume (vMeniscus) has been computed for this interaction
-
nn11
(=0.)¶ \(\iint_A n_1 n_1 \, dS = \iint_A n_2 n_2 \, dS\), \(A\) being the liquid-gas surface of the meniscus, \(\vec n\) the associated normal, and \((1,2,3)\) a local basis with \(3\) the meniscus orientation (ScGeom.normal). NB: \(A\) = 2 nn11 + nn33.
-
nn33
(=0.)¶ \(\iint_A n_3 n_3 \, dS\), \(A\) being the liquid-gas surface of the meniscus, \(\vec n\) the associated normal, and \((1,2,3)\) a local basis with \(3\) the meniscus orientation (ScGeom.normal). NB: \(A\) = 2 nn11 + nn33.
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vMeniscus
(=0.)¶ Volume of the meniscus
-
-
class
yade.wrapper.
CapillaryPhysDelaunay
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ An extended version of ̀FrictPhys, adding capillary data for CapillarityEngine.
-
Delta1
(=0.)¶ Defines the surface area wetted by the meniscus on the smallest grains of radius R1 (R1<R2)
-
Delta2
(=0.)¶ Defines the surface area wetted by the meniscus on the biggest grains of radius R2 (R1<R2)
-
SInterface
(=0.)¶ Fluid-Gaz Interfacial area
-
arcLength
(=0.)¶ Arc Length of the Fluid-Gaz Interface
-
capillaryPressure
(=0.)¶ Value of the capillary pressure Uc defines as Ugas-Uliquid
-
computeBridge
(=true)¶ If true, capillary bridge will be computed if not it will be ignored.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
fCap
(=Vector3r::Zero())¶ Capillary Force produces by the presence of the meniscus
-
fusionNumber
(=0.)¶ Indicates the number of meniscii that overlap with this one
-
isBroken
(=false)¶ If true, capillary force is zero and liquid bridge is inactive.
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
meniscus
(=false)¶ Presence of a meniscus if true
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vMeniscus
(=0.)¶ Volume of the menicus
-
-
class
yade.wrapper.
CohFrictPhys
(inherits RotStiffFrictPhys → FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ An interaction physics that extends RotStiffFrictPhys adding a breakable cohesive nature. Used e.g. by Law2_ScGeom6D_CohFrictPhys_CohesionMoment.
-
cohesionBroken
(=true)¶ is cohesion active? Set to false at the creation of a cohesive contact, and set to true when a fragile contact is broken
-
cohesionDisablesFriction
(=false)¶ is shear strength the sum of friction and adhesion or only adhesion?
-
creep_viscosity
(=-1)¶ creep viscosity [Pa.s/m].
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
fragile
(=true)¶ do cohesion disappear when contact strength is exceeded?
-
initCohesion
(=false)¶ Initialize the cohesive behaviour with current state as equilibrium state (same as Ip2_CohFrictMat_CohFrictMat_CohFrictPhys::setCohesionNow but acting on only one interaction)
-
kn
(=0)¶ Normal stiffness
-
kr
(=0)¶ rotational stiffness [N.m/rad]
-
ks
(=0)¶ Shear stiffness
-
ktw
(=0)¶ twist stiffness [N.m/rad]
-
maxRollPl
(=0.0)¶ Coefficient of rolling friction (negative means elastic).
-
maxTwistPl
(=0.0)¶ Coefficient of twisting friction (negative means elastic).
-
momentRotationLaw
(=false)¶ set from CohFrictMat::momentRotationLaw in order to possibly use bending/twisting moment at contacts (if true). See Law2_ScGeom6D_CohFrictPhys_CohesionMoment::always_use_moment_law for details.
-
moment_bending
(=Vector3r(0, 0, 0))¶ Bending moment
-
moment_twist
(=Vector3r(0, 0, 0))¶ Twist moment
-
normalAdhesion
(=0)¶ tensile strength
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
rollingAdhesion
(=0)¶ maximum bending moment when normal force is null (a frictional term might be added depending on CohFrictPhys::cohesionDisablesFriction and CohFrictPhys::maxRollPl)
-
shearAdhesion
(=0)¶ cohesive part of the shear strength (a frictional term might be added depending on CohFrictPhys::cohesionDisablesFriction)
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
twistingAdhesion
(=0)¶ maximum twisting moment when normal force is null (a frictional term might be added depending on CohFrictPhys::cohesionDisablesFriction and CohFrictPhys::maxTwistPl)
-
unp
(=0)¶ plastic normal displacement, only used for tensile behaviour and if CohFrictPhys::fragile =false.
-
unpMax
(=-1)¶ maximum value of plastic normal displacement (counted positively), after that the interaction breaks even if CohFrictPhys::fragile =false. A negative value (i.e. -1) means no maximum.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
CpmPhys
(inherits NormShearPhys → NormPhys → IPhys → Serializable)¶ Representation of a single interaction of the Cpm type: storage for relevant parameters.
Evolution of the contact is governed by Law2_ScGeom_CpmPhys_Cpm, that includes damage effects and chages of parameters inside CpmPhys. See cpm-model for details.
-
E
(=NaN)¶ normal modulus (stiffness / crossSection) [Pa]
-
Fn
¶ Magnitude of normal force (auto-updated)
-
Fs
¶ Magnitude of shear force (auto-updated)
-
G
(=NaN)¶ shear modulus [Pa]
-
crossSection
(=NaN)¶ equivalent cross-section associated with this contact [m²]
-
cummBetaCount
= 0¶
-
cummBetaIter
= 0¶
-
damLaw
(=1)¶ Law for softening part of uniaxial tension. 0 for linear, 1 for exponential (default)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
dmgOverstress
(=0)¶ damage viscous overstress (at previous step or at current step)
-
dmgRateExp
(=0)¶ exponent in the rate-dependent damage evolution
-
dmgStrain
(=0)¶ damage strain (at previous or current step)
-
dmgTau
(=-1)¶ characteristic time for damage (if non-positive, the law without rate-dependence is used)
-
epsCrackOnset
(=NaN)¶ strain at which the material starts to behave non-linearly
-
epsFracture
(=NaN)¶ strain at which the bond is fully broken [-]
-
epsN
¶ Current normal strain (auto-updated)
-
epsNPl
¶ normal plastic strain (initially zero) (auto-updated)
-
epsT
¶ Current shear strain (auto-updated)
-
epsTPl
¶ shear plastic strain (initially zero) (auto-updated)
-
equivStrainShearContrib
(=NaN)¶ Coefficient of shear contribution to equivalent strain
-
static
funcG
((float)kappaD, (float)epsCrackOnset, (float)epsFracture[, (bool)neverDamage=False[, (int)damLaw=1]]) → float :¶ Damage evolution law, evaluating the \(\omega\) parameter. \(\kappa_D\) is historically maximum strain, epsCrackOnset (\(\varepsilon_0\)) = CpmPhys.epsCrackOnset, epsFracture = CpmPhys.epsFracture; if neverDamage is
True
, the value returned will always be 0 (no damage). TODO
-
static
funcGInv
((float)omega, (float)epsCrackOnset, (float)epsFracture[, (bool)neverDamage=False[, (int)damLaw=1]]) → float :¶ Inversion of damage evolution law, evaluating the \(\kappa_D\) parameter. \(\omega\) is damage, for other parameters see funcG function
-
isCohesive
(=false)¶ if not cohesive, interaction is deleted when distance is greater than zero.
-
isoPrestress
(=0)¶ “prestress” of this link (used to simulate isotropic stress)
-
kappaD
¶ Up to now maximum normal strain (semi-norm), non-decreasing in time (auto-updated)
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
neverDamage
(=false)¶ the damage evolution function will always return virgin state
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
omega
¶ Damage internal variable (auto-updated)
-
plRateExp
(=0)¶ exponent in the rate-dependent viscoplasticity
-
plTau
(=-1)¶ characteristic time for viscoplasticity (if non-positive, no rate-dependence for shear)
-
refLength
(=NaN)¶ initial length of interaction [m]
-
refPD
(=NaN)¶ initial penetration depth of interaction [m] (used with ScGeom)
-
relDuctility
(=NaN)¶ Relative ductility of bonds in normal direction
-
relResidualStrength
¶ Relative residual strength (auto-updated)
-
setDamage
((CpmPhys)arg1, (float)arg2) → None :¶ TODO
-
setRelResidualStrength
((CpmPhys)arg1, (float)arg2) → None :¶ TODO
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
sigmaN
¶ Current normal stress (auto-updated)
-
sigmaT
¶ Current shear stress (auto-updated)
-
tanFrictionAngle
(=NaN)¶ tangens of internal friction angle [-]
-
undamagedCohesion
(=NaN)¶ virgin material cohesion [Pa]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
FrictPhys
(inherits NormShearPhys → NormPhys → IPhys → Serializable)¶ The simple linear elastic-plastic interaction with friction angle, like in the traditional [CundallStrack1979]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
FrictViscoPhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ Representation of a single interaction of the FrictViscoPM type, storage for relevant parameters
-
cn
(=NaN)¶ Normal viscous constant defined as \(\c_{n}=c_{n,crit}\beta_n\).
-
cn_crit
(=NaN)¶ Normal viscous constant for ctitical damping defined as \(\c_{n}=C_{n,crit}\beta_n\).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
normalViscous
(=Vector3r::Zero())¶ Normal viscous component
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
InelastCohFrictPhys
(inherits RotStiffFrictPhys → FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ -
cohesionBroken
(=false)¶ is cohesion active? will be set false when a fragile contact is broken
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
isBroken
(=false)¶ true if compression plastic fracture achieved
-
kDam
(=0)¶ Damage coefficient on bending, computed from maximum bending moment reached and pure creep behaviour. Its values will vary between InelastCohFrictPhys::kr and InelastCohFrictPhys::kRCrp .
-
kRCrp
(=0.0)¶ Bending creep stiffness
-
kRUnld
(=0.0)¶ Bending plastic unload stiffness
-
kTCrp
(=0.0)¶ Tension/compression creep stiffness
-
kTUnld
(=0.0)¶ Tension/compression plastic unload stiffness
-
kTwCrp
(=0.0)¶ Twist creep stiffness
-
kTwUnld
(=0.0)¶ Twist plastic unload stiffness
-
kn
(=0)¶ Normal stiffness
-
knC
(=0)¶ compression stiffness
-
knT
(=0)¶ tension stiffness
-
kr
(=0)¶ rotational stiffness [N.m/rad]
-
ks
(=0)¶ shear stiffness
-
ktw
(=0)¶ twist stiffness [N.m/rad]
-
maxBendMom
(=0.0)¶ Plastic failure bending moment.
-
maxContract
(=0.0)¶ Plastic failure contraction (shrinkage).
-
maxCrpRchdB
(=Vector3r(0, 0, 0))¶ maximal bending moment reached on plastic deformation.
-
maxCrpRchdC
(=Vector2r(0, 0))¶ maximal compression reached on plastic deformation. maxCrpRchdC[0] stores un and maxCrpRchdC[1] stores Fn.
-
maxCrpRchdT
(=Vector2r(0, 0))¶ maximal extension reached on plastic deformation. maxCrpRchdT[0] stores un and maxCrpRchdT[1] stores Fn.
-
maxCrpRchdTw
(=Vector2r(0, 0))¶ maximal twist reached on plastic deformation. maxCrpRchdTw[0] stores twist angle and maxCrpRchdTw[1] stores twist moment.
-
maxElB
(=0.0)¶ Maximum bending elastic moment.
-
maxElC
(=0.0)¶ Maximum compression elastic force.
-
maxElT
(=0.0)¶ Maximum tension elastic force.
-
maxElTw
(=0.0)¶ Maximum twist elastic moment.
-
maxExten
(=0.0)¶ Plastic failure extension (stretching).
-
maxTwist
(=0.0)¶ Plastic failure twist angle
-
moment_bending
(=Vector3r(0, 0, 0))¶ Bending moment
-
moment_twist
(=Vector3r(0, 0, 0))¶ Twist moment
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
onPlastB
(=false)¶ true if plasticity achieved on bending
-
onPlastC
(=false)¶ true if plasticity achieved on compression
-
onPlastT
(=false)¶ true if plasticity achieved on traction
-
onPlastTw
(=false)¶ true if plasticity achieved on twisting
-
pureCreep
(=Vector3r(0, 0, 0))¶ Pure creep curve, used for comparison in calculation.
-
shearAdhesion
(=0)¶ Maximum elastic shear force (cohesion).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
twp
(=0)¶ plastic twist penetration depth describing the equilibrium state.
-
unp
(=0)¶ plastic normal penetration depth describing the equilibrium state.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
JCFpmPhys
(inherits NormShearPhys → NormPhys → IPhys → Serializable)¶ Representation of a single interaction of the JCFpm type, storage for relevant parameters
-
FnMax
(=0.)¶ positiv value computed from tensile strength (or joint variant) to define the maximum admissible normal force in traction: Fn >= -FnMax. [N]
-
FsMax
(=0.)¶ computed from cohesion (or jointCohesion) to define the maximum admissible tangential force in shear, for Fn=0. [N]
-
checkedForCluster
(=false)¶ Have we checked if this int belongs in cluster?
-
clusterInts
(=uninitalized)¶ vector of pointers to the broken interactions nearby constituting a cluster
-
clusteredEvent
(=false)¶ is this interaction part of a cluster?
-
computedCentroid
(=false)¶ Flag for moment calculation
-
crackJointAperture
(=0.)¶ Relative displacement between 2 spheres (in case of a crack it is equivalent of the crack aperture)
-
crossSection
(=0.)¶ crossSection=pi*Rmin^2. [m2]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dilation
(=0.)¶ defines the normal displacement in the joint after sliding treshold. [m]
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
elapsedIter
(=0)¶ number of elapsed iterations for moment calculation
-
eventBeginTime
(=0)¶ The time at which event initiated
-
eventNumber
(=0)¶ cluster event number
-
firstMomentCalc
(=true)¶ Flag for moment calculation (auto-updated)
-
initD
(=0.)¶ equilibrium distance for interacting particles. Computed as the interparticular distance at first contact detection.
-
interactionsAdded
(=false)¶ have we added the ints associated with this event?
-
isBroken
(=false)¶ flag for broken interactions
-
isCohesive
(=false)¶ If false, particles interact in a frictional way. If true, particles are bonded regarding the given cohesion and tensile strength (or their jointed variants).
-
isOnJoint
(=false)¶ defined as true when both interacting particles are on joint and are in opposite sides of the joint surface. In this case, mechanical parameters of the interaction are derived from the ‘’joint…’’ material properties of the particles. Furthermore, the normal of the interaction may be re-oriented (see Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM.smoothJoint).
-
isOnSlot
(=false)¶ defined as true when interaction is located in the perforation slot (surface).
-
jointCumulativeSliding
(=0.)¶ sliding distance for particles interacting on a joint. Used, when is true, to take into account dilatancy due to shearing. [-]
-
jointNormal
(=Vector3r::Zero())¶
-
kineticEnergy
(=0)¶ kinetic energy of the two spheres participating in the interaction (easiest to store this value with interaction instead of spheres since we are using this information for moment magnitude estimations and associated interaction searches)
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
momentBroken
(=false)¶ Flag for moment calculation
-
momentCalculated
(=false)¶ Flag for moment calculation to avoid repeating twice the operations (auto-updated)
-
momentCentroid
(=Vector3r::Zero())¶ centroid of the AE event (avg location of clustered breaks)
-
momentEnergy
(=0)¶ reference strain (or kinetic) energy of surrounding interactions (particles)
-
momentEnergyChange
(=0)¶ storage of the maximum strain (or kinetic) energy change for surrounding interactions (particles)
-
momentMagnitude
(=0)¶ Moment magnitude of a failed interaction
-
more
(=false)¶ specifies if the interaction is crossed by more than 3 joints. If true, interaction is deleted (temporary solution).
-
nearbyFound
(=0)¶ Count used to debug moment calc
-
nearbyInts
(=uninitalized)¶ vector of pointers to the nearby ints used for moment calc
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
originalClusterEvent
(=false)¶ the original AE event for a cluster
-
originalEvent
(=uninitalized)¶ pointer to the original interaction of a cluster
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
strainEnergy
(=0)¶ strain energy of interaction
-
tanDilationAngle
(=0.)¶ tangent of the angle defining the dilatancy of the joint surface (auto. computed from JCFpmMat.jointDilationAngle). [-]
-
tanFrictionAngle
(=0.)¶ tangent of Coulomb friction angle for this interaction (auto. computed). [-]
-
temporalWindow
(=0)¶ temporal window for the clustering algorithm
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
KnKsPBPhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ EXPERIMENTAL. IPhys for PotentialBlock.
-
cohesion
(=0.0)¶ Cohesion (stress units)
-
cohesionBroken
(=true)¶ Whether cohesion is already broken. Considered true for particles with isBoundary=True
-
contactArea
(=0.0)¶ Contact area (auto-updated)
-
cumulative_us
(=0.0)¶ Cumulative translation
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
effective_phi
(=0.0)¶ Friction angle in clay after displacement
-
frictionAngle
(=0.0)¶ Friction angle
-
initialShearDir
(=Vector3r::Zero())¶ Initial shear direction
-
intactRock
(=false)¶ Whether to consider cohesive force in the Mohr-Coulomb criterion, if Law2_SCG_KnKsPBPhys_KnKsPBLaw.allowBreakage=False and cohesionBroken=False
-
isSliding
(=false)¶ Check if the contact is sliding (useful to calculate the ratio of sliding contacts)
-
jointLength
(=1.0)¶ Approximated contact length
-
jointType
(=0)¶ jointType
-
kn
(=0)¶ Normal stiffness
-
knVol
(=0.0)¶ Volumetric normal stiffness = Knormal
-
kn_i
(=5.0)¶ initial normal stiffness, user must provide input during initialisation
-
ks
(=0)¶ Shear stiffness
-
ksVol
(=0.0)¶ Volumetric shear stiffness = Kshear
-
ks_i
(=5.0)¶ initial shear stiffness, user must provide input during initialisation
-
mobilizedShear
(=uninitalized)¶ Percentage of mobilized shear force as the ratio of the current shear force to the current frictional limit. Represents a quantified measure of the isSliding parameter
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
normalViscous
(=Vector3r::Zero())¶ Viscous normal force
-
phi_b
(=0.0)¶ Basic friction angle (degrees)
-
phi_r
(=0.0)¶ Residual friction angle (degrees)
-
prevNormal
(=Vector3r::Zero())¶ Previous contact normal
-
prevSigma
(=0.0)¶ Previous normal stress
-
ptOnP1
(=Vector3r::Zero())¶ Point on particle 1
-
ptOnP2
(=Vector3r::Zero())¶ Point on particle 2
-
shearDir
(=Vector3r::Zero())¶ Shear direction
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearIncrementForCD
(=0.0)¶ toSeeWhether it is necessary to update contactArea
-
shearViscous
(=Vector3r::Zero())¶ Viscous shear force (assumed zero at the moment)
-
smallerID
(=1)¶ id of particle with smaller plane
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
tension
(=0.0)¶ Tension (stress units)
-
tensionBroken
(=true)¶ Whether tension is already broken. Considered true for particles with isBoundary=True
-
u_cumulative
(=0.0)¶ Cumulative translation
-
u_elastic
(=0.0)¶ Elastic shear displacement, not fully in use
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
useFaceProperties
(=false)¶ Whether to get face properties from the intersecting particles
-
viscousDamping
(=0.0)¶ Viscous damping
-
warmstart
(=false)¶ Warmstart for SOCP, not fully in use
-
-
class
yade.wrapper.
KnKsPhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ EXPERIMENTAL. IPhys for PotentialParticle.
-
brittleLength
(=5.0)¶ Shear length where strength degrades, not fully in use
-
cohesion
(=0.0)¶ Cohesion
-
cohesionBroken
(=true)¶ Whether cohesion is already broken. Considered true for particles with isBoundary=True
-
contactArea
(=0.0)¶ Contact area (auto-updated)
-
cumulative_us
(=0.0)¶ Cumulative shear translation (not fully in use)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
effective_phi
(=0.0)¶ Friction angle in clay after displacement
-
frictionAngle
(=0.0)¶ Friction angle
-
initialShearDir
(=Vector3r::Zero())¶ Initial shear direction
-
intactRock
(=false)¶ Whether to consider cohesive force in the Mohr-Coulomb criterion, if allowBreakage=False and cohesionBroken=False.
-
isSliding
(=false)¶ Check if the contact is sliding (useful to calculate the ratio of sliding contacts)
-
jointLength
(=1.0)¶ Approximated contact length
-
jointType
(=0)¶ jointType
-
kn
(=0)¶ Normal stiffness
-
knVol
(=0.0)¶ Volumetric normal stiffness = Knormal
-
kn_i
(=5.0)¶ Currently, we assume kn_i and Knormal are adopting the same value in Ip2 initialisation
-
ks
(=0)¶ Shear stiffness
-
ksVol
(=0.0)¶ Volumetric shear stiffness = Kshear
-
ks_i
(=5.0)¶ Currently, we assume ks_i and Kshear are adopting the same value in Ip2 initialisation
-
maxClosure
(=0.0002)¶ not fully in use, vmi
-
mobilizedShear
(=uninitalized)¶ Percentage of mobilized shear force as the ratio of the current shear force to the current frictional limit. Represents a quantified measure of the isSliding parameter
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
normalViscous
(=Vector3r::Zero())¶ Viscous normal force
-
phi_b
(=0.0)¶ Basic friction angle (degrees)
-
phi_r
(=0.0)¶ Residual friction angle (degrees)
-
prevNormal
(=Vector3r::Zero())¶ Previous normal
-
prevSigma
(=0.0)¶ Previous normal stress
-
ptOnP1
(=Vector3r::Zero())¶ Point on particle 1
-
ptOnP2
(=Vector3r::Zero())¶ Point on particle 2
-
shearDir
(=Vector3r::Zero())¶ Shear direction
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearIncrementForCD
(=0.0)¶ toSeeWhether it is necessary to update contactArea
-
shearViscous
(=Vector3r::Zero())¶ Viscous shear force (assumed zero at the moment)
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
tension
(=0.0)¶ Tension
-
tensionBroken
(=true)¶ Whether tension is already broken. Considered true for particles with isBoundary=True
-
u_cumulative
(=0.0)¶ Cumulative translation
-
u_elastic
(=0.0)¶ Elastic shear displacement, not fully in use
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
useFaceProperties
(=false)¶ Whether to get face properties from the intersecting particles
-
viscousDamping
(=0.0)¶ Viscous damping ratio, taken equal to Ip2_FrictMat_FrictMat_KnKsPhys.viscousDamping
-
warmstart
(=false)¶ Warmstart for SOCP, not fully in use
-
-
class
yade.wrapper.
LubricationPhys
(inherits ViscElPhys → FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ IPhys class for Lubrication w/o FlowEngine. Used by Law2_ScGeom_ImplicitLubricationPhys.
-
Fn
(=0.0)¶ Linear-elastic part of the normal force of the contact
-
Fv
(=0.0)¶ Viscous part of the normal force of the contact
-
a
(=0.)¶ Mean radius [m]
-
cn
(=NaN)¶ Normal viscous constant
-
contact
(=false)¶ The spheres are in contact
-
cs
(=NaN)¶ Shear viscous constant
-
delta
(=0)¶ \(\log(u)\) - used for scheme with \(\delta=\log(u)\) variable change
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
eps
(=0.001)¶ Roughness: fraction of radius used as roughness [-]
-
eta
(=1)¶ Fluid viscosity [Pa.s]
-
keps
(=1)¶ stiffness coefficient of the asperities [N/m]. Only used with resolution method=0, with resolution>0 it is always equal to kn.
-
kn
(=0)¶ Normal stiffness
-
kno
(=0.0)¶ Coefficient for normal stiffness (Hertzian-like contact) [N/m^(3/2)]
-
ks
(=0)¶ Shear stiffness
-
mR
(=0.0)¶ Rolling resistance, see [Zhou1999536].
-
mRtype
(=1)¶ Rolling resistance type, see [Zhou1999536]. mRtype=1 - equation (3) in [Zhou1999536]; mRtype=2 - equation (4) in [Zhou1999536]
-
mum
(=0.3)¶ Friction coefficient [-]
-
normalContactForce
(=Vector3r::Zero())¶ Normal contact force [N]
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
normalLubricationForce
(=Vector3r::Zero())¶ Normal lubrication force [N]
-
normalPotentialForce
(=Vector3r::Zero())¶ Normal force from potential other than contact [N]
-
nun
(=0.0)¶ Coefficient for normal lubrication [N.s]
-
prevDotU
(=0)¶ du/dt from previous integration - used for trapezoidal scheme (see Law2_ScGeom_ImplicitLubricationPhys::resolution for choosing resolution scheme)
-
prev_un
(=0)¶ Nondeformed distance (un) at t-dt [m]
-
shearContactForce
(=Vector3r::Zero())¶ Frictional contact force [N]
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearLubricationForce
(=Vector3r::Zero())¶ Shear lubrication force [N]
-
slip
(=false)¶ The contact is slipping
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
u
(=-1)¶ Interfacial distance (u) at t-dt [m]
-
ue
(=0.)¶ Surface deflection (ue) at t-dt [m]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
LudingPhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ IPhys created from LudingMat, for use with Law2_ScGeom_LudingPhys_Basic.
-
DeltMax
(=NaN)¶ Maximum overlap between particles for a collision
-
DeltMin
(=NaN)¶ MinimalDelta value of delta
-
DeltNull
(=NaN)¶ Force free overlap, plastic contact deformation
-
DeltPMax
(=NaN)¶ Maximum overlap between particles for the limit case
-
DeltPNull
(=NaN)¶ Max force free overlap, plastic contact deformation
-
DeltPrev
(=NaN)¶ Previous value of delta
-
G0
(=NaN)¶ Viscous damping
-
PhiF
(=NaN)¶ Dimensionless plasticity depth
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
k1
(=NaN)¶ Slope of loading plastic branch
-
k2
(=NaN)¶ Slope of unloading and reloading elastic branch
-
kc
(=NaN)¶ Slope of irreversible, tensile adhesive branch
-
kn
(=0)¶ Normal stiffness
-
kp
(=NaN)¶ Slope of unloading and reloading limit elastic branch
-
ks
(=0)¶ Shear stiffness
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
MindlinCapillaryPhys
(inherits MindlinPhys → RotStiffFrictPhys → FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ Adds capillary physics to Mindlin’s interaction physics.
-
Delta1
(=0.)¶ Defines the surface area wetted by the meniscus on the smallest grains of radius R1 (R1<R2)
-
Delta2
(=0.)¶ Defines the surface area wetted by the meniscus on the biggest grains of radius R2 (R1<R2)
-
Fs
(=Vector2r::Zero())¶ Shear force in local axes (computed incrementally)
-
adhesionForce
(=0.0)¶ Force of adhesion as predicted by DMT
-
beta
(=0.0)¶ Auxiliary parameter used in the viscous damping model of [Mueller2011]
-
betan
(=0.0)¶ Normal Damping Ratio. Fraction of the viscous damping coefficient (normal direction) equal to \(\frac{c_{n}}{C_{n,crit}}\).
-
betas
(=0.0)¶ Shear Damping Ratio. Fraction of the viscous damping coefficient (shear direction) equal to \(\frac{c_{s}}{C_{s,crit}}\).
-
capillaryPressure
(=0.)¶ Value of the capillary pressure Uc. Defined as Ugas-Uliquid, obtained from corresponding Law2 parameter
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
fCap
(=Vector3r::Zero())¶ Capillary Force produces by the presence of the meniscus. This is the force acting on particle #2
-
fusionNumber
(=0.)¶ Indicates the number of meniscii that overlap with this one
-
initD
(=0)¶ initial penetration distance, used for crackaperture estimate
-
isAdhesive
(=false)¶ bool to identify if the contact is adhesive, that is to say if the contact force is attractive
-
isBroken
(=false)¶ Might be set to true by the user to make liquid bridge inactive (capillary force is zero)
-
isSliding
(=false)¶ check if the contact is sliding (useful to calculate the ratio of sliding contacts)
-
kn
(=0)¶ Normal stiffness
-
kno
(=0.0)¶ Constant value in the formulation of the normal stiffness
-
kr
(=0)¶ rotational stiffness [N.m/rad]
-
ks
(=0)¶ Shear stiffness
-
kso
(=0.0)¶ Constant value in the formulation of the tangential stiffness
-
ktw
(=0)¶ twist stiffness [N.m/rad]
-
maxBendPl
(=0.0)¶ Coefficient to determine the maximum plastic moment to apply at the contact
-
meniscus
(=false)¶ True when a meniscus with a non-zero liquid volume (vMeniscus) has been computed for this interaction
-
momentBend
(=Vector3r::Zero())¶ Artificial bending moment to provide rolling resistance in order to account for some degree of interlocking between particles
-
momentTwist
(=Vector3r::Zero())¶ Artificial twisting moment (no plastic condition can be applied at the moment)
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
normalViscous
(=Vector3r::Zero())¶ Normal viscous component
-
prevU
(=Vector3r::Zero())¶ Previous local displacement; only used with Law2_L3Geom_FrictPhys_HertzMindlin.
-
radius
(=NaN)¶ Contact radius (only computed with Law2_ScGeom_MindlinPhys_Mindlin::calcEnergy)
-
shearElastic
(=Vector3r::Zero())¶ Total elastic shear force
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearViscous
(=Vector3r::Zero())¶ Shear viscous component
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
usElastic
(=Vector3r::Zero())¶ Total elastic shear displacement (only elastic part)
-
usTotal
(=Vector3r::Zero())¶ Total elastic shear displacement (elastic+plastic part)
-
vMeniscus
(=0.)¶ Volume of the meniscus
-
-
class
yade.wrapper.
MindlinPhys
(inherits RotStiffFrictPhys → FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ Representation of an interaction of the Hertz-Mindlin type.
-
Fs
(=Vector2r::Zero())¶ Shear force in local axes (computed incrementally)
-
adhesionForce
(=0.0)¶ Force of adhesion as predicted by DMT
-
beta
(=0.0)¶ Auxiliary parameter used in the viscous damping model of [Mueller2011]
-
betan
(=0.0)¶ Normal Damping Ratio. Fraction of the viscous damping coefficient (normal direction) equal to \(\frac{c_{n}}{C_{n,crit}}\).
-
betas
(=0.0)¶ Shear Damping Ratio. Fraction of the viscous damping coefficient (shear direction) equal to \(\frac{c_{s}}{C_{s,crit}}\).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
initD
(=0)¶ initial penetration distance, used for crackaperture estimate
-
isAdhesive
(=false)¶ bool to identify if the contact is adhesive, that is to say if the contact force is attractive
-
isBroken
(=0)¶ bool to keep a bond flagged as broken (only useful when displacement criteria is used in partial sat for cracked cell estimates)
-
isSliding
(=false)¶ check if the contact is sliding (useful to calculate the ratio of sliding contacts)
-
kn
(=0)¶ Normal stiffness
-
kno
(=0.0)¶ Constant value in the formulation of the normal stiffness
-
kr
(=0)¶ rotational stiffness [N.m/rad]
-
ks
(=0)¶ Shear stiffness
-
kso
(=0.0)¶ Constant value in the formulation of the tangential stiffness
-
ktw
(=0)¶ twist stiffness [N.m/rad]
-
maxBendPl
(=0.0)¶ Coefficient to determine the maximum plastic moment to apply at the contact
-
momentBend
(=Vector3r::Zero())¶ Artificial bending moment to provide rolling resistance in order to account for some degree of interlocking between particles
-
momentTwist
(=Vector3r::Zero())¶ Artificial twisting moment (no plastic condition can be applied at the moment)
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
normalViscous
(=Vector3r::Zero())¶ Normal viscous component
-
prevU
(=Vector3r::Zero())¶ Previous local displacement; only used with Law2_L3Geom_FrictPhys_HertzMindlin.
-
radius
(=NaN)¶ Contact radius (only computed with Law2_ScGeom_MindlinPhys_Mindlin::calcEnergy)
-
shearElastic
(=Vector3r::Zero())¶ Total elastic shear force
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearViscous
(=Vector3r::Zero())¶ Shear viscous component
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
usElastic
(=Vector3r::Zero())¶ Total elastic shear displacement (only elastic part)
-
usTotal
(=Vector3r::Zero())¶ Total elastic shear displacement (elastic+plastic part)
-
-
class
yade.wrapper.
MindlinPhysCDM
(inherits MindlinPhys → RotStiffFrictPhys → FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ Representation of an interaction of an extended Hertz-Mindlin type. Normal direction: parameters for Conical Damage Model (Harkness et al. 2016, Suhr & Six 2017). Tangential direction: parameters for stress dependent interparticle friction coefficient (Suhr & Six 2016). Both models can be switched on/off separately, see FrictMatCDM.
-
E
(=0.0)¶ [Pa] equiv. Young’s modulus
-
Fs
(=Vector2r::Zero())¶ Shear force in local axes (computed incrementally)
-
G
(=0.0)¶ [Pa] equiv. shear modulus
-
R
(=0.0)¶ [m] contact radius in conical damage model
-
adhesionForce
(=0.0)¶ Force of adhesion as predicted by DMT
-
alphaFac
(=0.0)¶ factor considering angle of conical asperities
-
beta
(=0.0)¶ Auxiliary parameter used in the viscous damping model of [Mueller2011]
-
betan
(=0.0)¶ Normal Damping Ratio. Fraction of the viscous damping coefficient (normal direction) equal to \(\frac{c_{n}}{C_{n,crit}}\).
-
betas
(=0.0)¶ Shear Damping Ratio. Fraction of the viscous damping coefficient (shear direction) equal to \(\frac{c_{s}}{C_{s,crit}}\).
-
c1
(=0.0)¶ [-] parameter of pressure dependent friction model c1
-
c2
(=0.0)¶ [-] parameter of pressure dependent friction model c2
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
initD
(=0)¶ initial penetration distance, used for crackaperture estimate
-
isAdhesive
(=false)¶ bool to identify if the contact is adhesive, that is to say if the contact force is attractive
-
isBroken
(=0)¶ bool to keep a bond flagged as broken (only useful when displacement criteria is used in partial sat for cracked cell estimates)
-
isSliding
(=false)¶ check if the contact is sliding (useful to calculate the ratio of sliding contacts)
-
isYielding
(=false)¶ bool: is contact currently yielding?
-
kn
(=0)¶ Normal stiffness
-
kno
(=0.0)¶ Constant value in the formulation of the normal stiffness
-
kr
(=0)¶ rotational stiffness [N.m/rad]
-
ks
(=0)¶ Shear stiffness
-
kso
(=0.0)¶ Constant value in the formulation of the tangential stiffness
-
ktw
(=0)¶ twist stiffness [N.m/rad]
-
maxBendPl
(=0.0)¶ Coefficient to determine the maximum plastic moment to apply at the contact
-
momentBend
(=Vector3r::Zero())¶ Artificial bending moment to provide rolling resistance in order to account for some degree of interlocking between particles
-
momentTwist
(=Vector3r::Zero())¶ Artificial twisting moment (no plastic condition can be applied at the moment)
-
mu0
(=0.0)¶ [-] parameter of pressure dependent friction model mu0
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
normalViscous
(=Vector3r::Zero())¶ Normal viscous component
-
prevU
(=Vector3r::Zero())¶ Previous local displacement; only used with Law2_L3Geom_FrictPhys_HertzMindlin.
-
radius
(=NaN)¶ Contact radius (only computed with Law2_ScGeom_MindlinPhys_Mindlin::calcEnergy)
-
shearElastic
(=Vector3r::Zero())¶ Total elastic shear force
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearViscous
(=Vector3r::Zero())¶ Shear viscous component
-
sigmaMax
(=0.0)¶ [Pa] max compressive strength of material
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
usElastic
(=Vector3r::Zero())¶ Total elastic shear displacement (only elastic part)
-
usTotal
(=Vector3r::Zero())¶ Total elastic shear displacement (elastic+plastic part)
-
-
class
yade.wrapper.
MortarPhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ IPhys class containing parameters of MortarMat. Used by Law2_ScGeom_MortarPhys_Lourenco.
-
cohesion
(=NaN)¶ cohesion [Pa]
-
compressiveStrength
(=NaN)¶ compressiveStrength [Pa]
-
crossSection
(=NaN)¶ Crosssection of interaction
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
ellAspect
(=NaN)¶ aspect ratio of elliptical ‘cap’. Value >1 means the ellipse is longer along normal stress axis.
-
failureCondition
((MortarPhys)arg1, (float)arg2, (float)arg3) → bool :¶ Failure condition from normal stress and norm of shear stress (false=elastic, true=damaged)
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
neverDamage
(=false)¶ If true, interactions remain elastic regardless stresses
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
sigmaN
¶ Current normal stress (auto-updated)
-
sigmaT
¶ Current shear stress (auto-updated)
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
tensileStrength
(=NaN)¶ tensileStrength [Pa]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
MultiFrictPhys
(inherits IPhys → Serializable)¶ A set of FrictPhys for describing the physical part of an interaction with multiple frictional contact points between two LevelSet bodies, as a set of FrictPhys items in contacts. To combine with MultiScGeom and associated classes.
-
contacts
(=uninitalized)¶ The actual list of FrictPhys items corresponding to the different contact points.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
frictAngle
(=0)¶ Mother value of atan(FrictPhys.tangensOfFrictionAngle) in radians that will apply to each contact point.
-
kn
(=0)¶ Mother value of FrictPhys.kn that will apply to each contact point.
-
ks
(=0)¶ Mother value of FrictPhys.ks that will apply to each contact point.
-
nodesIds
(=uninitalized)¶ The physics counterpart of MultiScGeom.nodesIds (both should be equal by design).
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
NormPhys
(inherits IPhys → Serializable)¶ Abstract class for interactions that have normal stiffness.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
kn
(=0)¶ Normal stiffness
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
NormShearPhys
(inherits NormPhys → IPhys → Serializable)¶ Abstract class for interactions that have shear stiffnesses, in addition to normal stiffness. This class is used in the PFC3d-style stiffness timestepper.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
PolyhedraPhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ Simple elastic material with friction for volumetric constitutive laws
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
RotStiffFrictPhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ Version of FrictPhys with a rotational stiffness
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
kn
(=0)¶ Normal stiffness
-
kr
(=0)¶ rotational stiffness [N.m/rad]
-
ks
(=0)¶ Shear stiffness
-
ktw
(=0)¶ twist stiffness [N.m/rad]
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
ViscElCapPhys
(inherits ViscElPhys → FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ IPhys created from ViscElCapMat, for use with Law2_ScGeom_ViscElCapPhys_Basic.
-
Capillar
(=false)¶ True, if capillar forces need to be added.
-
CapillarType
(=None_Capillar)¶ Different types of capillar interaction: Willett_numeric, Willett_analytic, Weigert, Rabinovich, Lambert, Soulie
-
Fn
(=0.0)¶ Linear-elastic part of the normal force of the contact
-
Fv
(=0.0)¶ Viscous part of the normal force of the contact
-
Vb
(=0.0)¶ Liquid bridge volume [m^3]
-
cn
(=NaN)¶ Normal viscous constant
-
cs
(=NaN)¶ Shear viscous constant
-
dcap
(=0.0)¶ Damping coefficient for the capillary phase [-]
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
gamma
(=0.0)¶ Surface tension [N/m]
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
liqBridgeActive
(=false)¶ Whether liquid bridge is active at the moment
-
liqBridgeCreated
(=false)¶ Whether liquid bridge was created, only after a normal contact of spheres
-
mR
(=0.0)¶ Rolling resistance, see [Zhou1999536].
-
mRtype
(=1)¶ Rolling resistance type, see [Zhou1999536]. mRtype=1 - equation (3) in [Zhou1999536]; mRtype=2 - equation (4) in [Zhou1999536]
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
sCrit
(=false)¶ Critical bridge length [m]
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
theta
(=0.0)¶ Contact angle [rad]
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
ViscElPhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ IPhys created from ViscElMat, for use with Law2_ScGeom_ViscElPhys_Basic.
-
Fn
(=0.0)¶ Linear-elastic part of the normal force of the contact
-
Fv
(=0.0)¶ Viscous part of the normal force of the contact
-
cn
(=NaN)¶ Normal viscous constant
-
cs
(=NaN)¶ Shear viscous constant
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
mR
(=0.0)¶ Rolling resistance, see [Zhou1999536].
-
mRtype
(=1)¶ Rolling resistance type, see [Zhou1999536]. mRtype=1 - equation (3) in [Zhou1999536]; mRtype=2 - equation (4) in [Zhou1999536]
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
ViscoFrictPhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ Temporary version of FrictPhys for compatibility reasons
-
creepedShear
(=Vector3r(0, 0, 0))¶ Creeped force (parallel)
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
WirePhys
(inherits FrictPhys → NormShearPhys → NormPhys → IPhys → Serializable)¶ Representation of a single interaction of the WirePM type, storage for relevant parameters
-
dL
(=0.)¶ Additional wire length for considering the distortion for WireMat type=2 (see [Thoeni2013]).
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
dispHierarchy
((IPhys)arg1[, (bool)names=True]) → list :¶ Return list of dispatch classes (from down upwards), starting with the class instance itself, top-level indexable at last. If names is true (default), return class names rather than numerical indices.
-
dispIndex
¶ Return class index of this instance.
-
displForceValues
(=uninitalized)¶ Defines the values for force-displacement curve.
-
initD
(=0.)¶ Equilibrium distance for particles. Computed as the initial inter-particular distance when particle are linked.
-
isDoubleTwist
(=false)¶ If true the properties of the interaction will be defined as a double-twisted wire.
-
isLinked
(=false)¶ If true particles are linked and will interact. Interactions are linked automatically by the definition of the corresponding interaction radius. The value is false if the wire breaks (no more interaction).
-
kn
(=0)¶ Normal stiffness
-
ks
(=0)¶ Shear stiffness
-
limitFactor
(=0.)¶ This value indicates on how far from failing the wire is, e.g. actual normal displacement divided by admissible normal displacement.
-
normalForce
(=Vector3r::Zero())¶ Normal force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
plastD
¶ Plastic part of the inter-particular distance of the previous step.
Note
Only elastic displacements are reversible (the elastic stiffness is used for unloading) and compressive forces are inadmissible. The compressive stiffness is assumed to be equal to zero.
-
shearForce
(=Vector3r::Zero())¶ Shear force after previous step (in global coordinates), as sustained by particle #2 (from particle #1).
-
stiffnessValues
(=uninitalized)¶ Defines the values for the various stiffnesses (the elastic stiffness is stored as kn).
-
tangensOfFrictionAngle
(=NaN)¶ tan of angle of friction
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
Global engines¶
GlobalEngine¶
-
class
yade.wrapper.
GlobalEngine
(inherits Engine → Serializable)¶ Engine that will generally affect the whole simulation (contrary to PartialEngine).
-
dead
(=false)¶ If true, this engine will not run at all; can be used for making an engine temporarily deactivated and only resurrect it at a later point.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
execCount
¶ Cumulative count this engine was run (only used if O.timingEnabled==
True
).
-
execTime
¶ Cumulative time in nanoseconds this Engine took to run (only used if O.timingEnabled==
True
).
-
label
(=uninitalized)¶ Textual label for this object; must be valid python identifier, you can refer to it directly from python.
-
ompThreads
(=-1)¶ Number of threads to be used in the engine. If ompThreads<0 (default), the number will be typically OMP_NUM_THREADS or the number N defined by ‘yade -jN’ (this behavior can depend on the engine though). This attribute will only affect engines whose code includes openMP parallel regions (e.g. InteractionLoop). This attribute is mostly useful for experiments or when combining ParallelEngine with engines that run parallel regions, resulting in nested OMP loops with different number of threads at each level.
-
timingDeltas
¶ Detailed information about timing inside the Engine itself. Empty unless enabled in the source code and O.timingEnabled==
True
.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
BoxFactory
(inherits SpheresFactory → GlobalEngine → Engine → Serializable)¶ Box geometry of the SpheresFactory region, given by extents and center
-
PSDcalculateMass
(=true)¶ PSD-Input is in mass (true), otherwise the number of particles will be considered.
-
PSDcum
(=uninitalized)¶ PSD-dispersion, cumulative procent meanings [-]
-
PSDsizes
(=uninitalized)¶ PSD-dispersion, sizes of cells, Diameter [m]
-
blockedDOFs
(="")¶ Blocked degress of freedom
-
center
(=Vector3r(NaN, NaN, NaN))¶ Center of the region
-
color
(=Vector3r(-1, -1, -1))¶ Use the color for newly created particles, if specified
-
dead
(=false)¶ If true, this engine will not run at all; can be used for making an engine temporarily deactivated and only resurrect it at a later point.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
exactDiam
(=true)¶ If true, the particles only with the defined in PSDsizes diameters will be created. Otherwise the diameter will be randomly chosen in the range [PSDsizes[i-1]:PSDsizes[i]], in this case the length of PSDsizes should be more on 1, than the length of PSDcum.
-
execCount
¶ Cumulative count this engine was run (only used if O.timingEnabled==
True
).
-
execTime
¶ Cumulative time in nanoseconds this Engine took to run (only used if O.timingEnabled==
True
).
-
extents
(=Vector3r(NaN, NaN, NaN))¶ Extents of the region
-
goalMass
(=0)¶ Total mass that should be attained at the end of the current step. (auto-updated)
-
ids
(=uninitalized)¶ ids of created bodies
-
label
(=uninitalized)¶ Textual label for this object; must be valid python identifier, you can refer to it directly from python.
-
mask
(=-1)¶ groupMask to apply for newly created spheres
-
massFlowRate
(=NaN)¶ Mass flow rate [kg/s]
-
materialId
(=-1)¶ Shared material id to use for newly created spheres (can be negative to count from the end)
-
maxAttempt
(=5000)¶ Maximum number of attempts to position a new sphere randomly.
-
maxMass
(=-1)¶ Maximal mass at which to stop generating new particles regardless of massFlowRate. if maxMass=-1 - this parameter is ignored.
-
maxParticles
(=100)¶ The number of particles at which to stop generating new ones regardless of massFlowRate. if maxParticles=-1 - this parameter is ignored .
-
normal
(=Vector3r(NaN, NaN, NaN))¶ Orientation of the region’s geometry, direction of particle’s velocites if normalVel is not set.
-
normalVel
(=Vector3r(NaN, NaN, NaN))¶ Direction of particle’s velocites.
-
numParticles
(=0)¶ Cummulative number of particles produces so far (auto-updated)
-
ompThreads
(=-1)¶ Number of threads to be used in the engine. If ompThreads<0 (default), the number will be typically OMP_NUM_THREADS or the number N defined by ‘yade -jN’ (this behavior can depend on the engine though). This attribute will only affect engines whose code includes openMP parallel regions (e.g. InteractionLoop). This attribute is mostly useful for experiments or when combining ParallelEngine with engines that run parallel regions, resulting in nested OMP loops with different number of threads at each level.
-
rMax
(=NaN)¶ Maximum radius of generated spheres (uniform distribution)
-
rMin
(=NaN)¶ Minimum radius of generated spheres (uniform distribution)
-
silent
(=false)¶ If true no complain about excessing maxAttempt but disable the factory (by set massFlowRate=0).
-
stopIfFailed
(=true)¶ If true, the SpheresFactory stops (sets massFlowRate=0), when maximal number of attempts to insert particle exceed.
-
timingDeltas
¶ Detailed information about timing inside the Engine itself. Empty unless enabled in the source code and O.timingEnabled==
True
.
-
totalMass
(=0)¶ Mass of spheres that was produced so far. (auto-updated)
-
totalVolume
(=0)¶ Volume of spheres that was produced so far. (auto-updated)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vAngle
(=NaN)¶ Maximum angle by which the initial sphere velocity deviates from the normal.
-
vMax
(=NaN)¶ Maximum velocity norm of generated spheres (uniform distribution)
-
vMin
(=NaN)¶ Minimum velocity norm of generated spheres (uniform distribution)
-
-
class
yade.wrapper.
CapillarityEngine
(inherits GlobalEngine → Engine → Serializable)¶ This engine loops over interactions with physics CapillaryPhysDelaunay and it assign pendular bridges to them. It is a reimplementation of [Scholtes2009b], adding the option of imposing the bridge volume (instead of only capillary pressure) and enabling using unstructured input data by triangulation. This reimplementation also provides more geometrical quantities in order to define interfacial energy terms, it was used specifically in [Chalak2017].
If :yref:`CapillarityEngine.imposePressure`==True, a uniform capillary pressure is assigned to all bridges, the liquid volume of each bridge is a result and it will change if the distance between the spheres changes. If :yref:`CapillarityEngine.imposePressure`==False, then the volume of each bridge remains constant during motion, and capillary pressure is updated, instead.
For references, see [Scholtes2009b] and a couple papers by the same authors; [Scholtes2009d] (in french) is the most detailed.
The engine needs an input data file available in yade-data package.
In order to allow capillary forces between distant spheres, it is necessary to enlarge the bounding boxes using Bo1_Sphere_Aabb::aabbEnlargeFactor and make the Ig2 define define distant interactions via:yref:interactionDetectionFactor<Ig2_Sphere_Sphere_ScGeom::interactionDetectionFactor>. It is also necessary to disable interactions removal by the constitutive law (Law2). The only combinations of laws supported are currently capillary law + Law2_ScGeom_FrictPhys_CundallStrack and capillary law + Law2_ScGeom_MindlinPhys_Mindlin (and the other variants of Hertz-Mindlin).
See triaxCapillarityDelaunay.py for an example script.
-
binaryFusion
(=true)¶ If true, capillary forces are set to zero as soon as, at least, 1 overlap (menisci fusion) is detected
-
capillaryPressure
(=0.)¶ Value of the capillary pressure Uc defines as Uc=Ugas-Uliquid
-
createDistantMeniscii
(=false)¶ Generate meniscii between distant spheres? Else only maintain the existing one. For modeling a wetting path this flag should always be false. For a drying path it should be true for one step (initialization) then false, as in the logic of [Scholtes2009c]. The engine turns it off automatically after one execution.
-
dead
(=false)¶ If true, this engine will not run at all; can be used for making an engine temporarily deactivated and only resurrect it at a later point.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
disp
(=0.)¶ Dispersion from the mean Value of the roughness
-
epsilonMean
(=0.)¶ Mean Value of the roughness
-
execCount
¶ Cumulative count this engine was run (only used if O.timingEnabled==
True
).
-
execTime
¶ Cumulative time in nanoseconds this Engine took to run (only used if O.timingEnabled==
True
).
-
fusionDetection
(=false)¶ If true potential menisci overlaps are checked
-
hertzInitialized
(=false)¶ FIXME: replace by class index
-
hertzOn
(=false)¶ (auto-updated) true if hertz model is used
-
imposePressure
(=true)¶ If True, suction is imposed and is constant if not Volume is imposed-Undrained test
-
initialized
(=false)¶
-
inputFilename
(=string("capillaryfile.txt"))¶ the file with meniscus solutions, used for interpolation.
-
intEnergy
((CapillarityEngine)arg1) → float :¶ define the energy of interfaces in unsaturated pendular state
-
interactionDetectionFactor
(=1.5)¶ defines critical distance for deleting interactions. Must be consistent with the Ig2 value.
-
label
(=uninitalized)¶ Textual label for this object; must be valid python identifier, you can refer to it directly from python.
-
liquidTension
(=0.073)¶ Value of the superficial water tension in N/m
-
ompThreads
(=-1)¶ Number of threads to be used in the engine. If ompThreads<0 (default), the number will be typically OMP_NUM_THREADS or the number N defined by ‘yade -jN’ (this behavior can depend on the engine though). This attribute will only affect engines whose code includes openMP parallel regions (e.g. InteractionLoop). This attribute is mostly useful for experiments or when combining ParallelEngine with engines that run parallel regions, resulting in nested OMP loops with different number of threads at each level.
-
solveStandalone
((CapillarityEngine)arg1, (float)R1, (float)R2, (float)pressure, (float)gap[, (CapillaryPhysDelaunay)bridge=None]) → CapillaryPhysDelaunay :¶ Returns a CapillaryPhysDelaunay object representing a single bridge independently of the scene, using radii R1 and R2, capillary pressure, and gap between two spheres. The returned value contains internals of the interpolation process, it can be passed as an optional argument (‘bridge’). If the resolution is repeated multiple times, re-using cached data will increase performance if the geometrical parameters are changing by small increments
-
swInterface
((CapillarityEngine)arg1) → float :¶ define the amount of solid-wetting interfaces in unsaturated pendular state
-
timingDeltas
¶ Detailed information about timing inside the Engine itself. Empty unless enabled in the source code and O.timingEnabled==
True
.
-
totalVolumeConstant
(=true)¶ in undrained test there are 2 options, If True, the total volume of water is imposed,if false the volume of each meniscus is kept constant: in this case capillary pressure can be imposed for initial distribution of meniscus or it is the total volume that can be imposed initially
-
totalVolumeofWater
(=-1.)¶ Value of imposed water volume
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
waterVolume
((CapillarityEngine)arg1) → float :¶ return the total value of water in the sample
-
wnInterface
((CapillarityEngine)arg1) → float :¶ define the amount of wetting-non-wetiing interfaces in unsaturated pendular state
-
-
class
yade.wrapper.
CircularFactory
(inherits SpheresFactory → GlobalEngine → Engine → Serializable)¶ Circular geometry of the SpheresFactory region. It can be disk (given by radius and center), or cylinder (given by radius, length and center).
-
PSDcalculateMass
(=true)¶ PSD-Input is in mass (true), otherwise the number of particles will be considered.
-
PSDcum
(=uninitalized)¶ PSD-dispersion, cumulative procent meanings [-]
-
PSDsizes
(=uninitalized)¶ PSD-dispersion, sizes of cells, Diameter [m]
-
blockedDOFs
(="")¶ Blocked degress of freedom
-
center
(=Vector3r(NaN, NaN, NaN))¶ Center of the region
-
color
(=Vector3r(-1, -1, -1))¶ Use the color for newly created particles, if specified
-
dead
(=false)¶ If true, this engine will not run at all; can be used for making an engine temporarily deactivated and only resurrect it at a later point.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
exactDiam
(=true)¶ If true, the particles only with the defined in PSDsizes diameters will be created. Otherwise the diameter will be randomly chosen in the range [PSDsizes[i-1]:PSDsizes[i]], in this case the length of PSDsizes should be more on 1, than the length of PSDcum.
-
execCount
¶ Cumulative count this engine was run (only used if O.timingEnabled==
True
).
-
execTime
¶ Cumulative time in nanoseconds this Engine took to run (only used if O.timingEnabled==
True
).
-
goalMass
(=0)¶ Total mass that should be attained at the end of the current step. (auto-updated)
-
ids
(=uninitalized)¶ ids of created bodies
-
label
(=uninitalized)¶ Textual label for this object; must be valid python identifier, you can refer to it directly from python.
-
length
(=0)¶ Length of the cylindrical region (0 by default)
-
mask
(=-1)¶ groupMask to apply for newly created spheres
-
massFlowRate
(=NaN)¶ Mass flow rate [kg/s]
-
materialId
(=-1)¶ Shared material id to use for newly created spheres (can be negative to count from the end)
-
maxAttempt
(=5000)¶ Maximum number of attempts to position a new sphere randomly.
-
maxMass
(=-1)¶ Maximal mass at which to stop generating new particles regardless of massFlowRate. if maxMass=-1 - this parameter is ignored.
-
maxParticles
(=100)¶ The number of particles at which to stop generating new ones regardless of massFlowRate. if maxParticles=-1 - this parameter is ignored .
-
normal
(=Vector3r(NaN, NaN, NaN))¶ Orientation of the region’s geometry, direction of particle’s velocites if normalVel is not set.
-
normalVel
(=Vector3r(NaN, NaN, NaN))¶ Direction of particle’s velocites.
-
numParticles
(=0)¶ Cummulative number of particles produces so far (auto-updated)
-
ompThreads
(=-1)¶ Number of threads to be used in the engine. If ompThreads<0 (default), the number will be typically OMP_NUM_THREADS or the number N defined by ‘yade -jN’ (this behavior can depend on the engine though). This attribute will only affect engines whose code includes openMP parallel regions (e.g. InteractionLoop). This attribute is mostly useful for experiments or when combining ParallelEngine with engines that run parallel regions, resulting in nested OMP loops with different number of threads at each level.
-
rMax
(=NaN)¶ Maximum radius of generated spheres (uniform distribution)
-
rMin
(=NaN)¶ Minimum radius of generated spheres (uniform distribution)
-
radius
(=NaN)¶ Radius of the region
-
silent
(=false)¶ If true no complain about excessing maxAttempt but disable the factory (by set massFlowRate=0).
-
stopIfFailed
(=true)¶ If true, the SpheresFactory stops (sets massFlowRate=0), when maximal number of attempts to insert particle exceed.
-
timingDeltas
¶ Detailed information about timing inside the Engine itself. Empty unless enabled in the source code and O.timingEnabled==
True
.
-
totalMass
(=0)¶ Mass of spheres that was produced so far. (auto-updated)
-
totalVolume
(=0)¶ Volume of spheres that was produced so far. (auto-updated)
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
vAngle
(=NaN)¶ Maximum angle by which the initial sphere velocity deviates from the normal.
-
vMax
(=NaN)¶ Maximum velocity norm of generated spheres (uniform distribution)
-
vMin
(=NaN)¶ Minimum velocity norm of generated spheres (uniform distribution)
-
-
class
yade.wrapper.
CohesiveFrictionalContactLaw
(inherits GlobalEngine → Engine → Serializable)¶ [DEPRECATED] Loop over interactions applying Law2_ScGeom6D_CohFrictPhys_CohesionMoment on all interactions.
Note
Use InteractionLoop and Law2_ScGeom6D_CohFrictPhys_CohesionMoment instead of this class for performance reasons.
-
always_use_moment_law
(=false)¶ If false, compute moments only for cohesive contacts, broken contacts will have only normal and shear forces. If true, compute bending/twisting moments at all contacts and use the frictional coefficients CohFrictMat::etaRoll and CohFrictMat::etaTwist to define the strength of the broken contacts.
-
creep_viscosity
(=false)¶ creep viscosity [Pa.s/m]. probably should be moved to Ip2_CohFrictMat_CohFrictMat_CohFrictPhys…
-
dead
(=false)¶ If true, this engine will not run at all; can be used for making an engine temporarily deactivated and only resurrect it at a later point.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
execCount
¶ Cumulative count this engine was run (only used if O.timingEnabled==
True
).
-
execTime
¶ Cumulative time in nanoseconds this Engine took to run (only used if O.timingEnabled==
True
).
-
label
(=uninitalized)¶ Textual label for this object; must be valid python identifier, you can refer to it directly from python.
-
neverErase
(=false)¶ Keep interactions even if particles go away from each other (only in case another constitutive law is in the scene, e.g. Law2_ScGeom_CapillaryPhys_Capillarity)
-
ompThreads
(=-1)¶ Number of threads to be used in the engine. If ompThreads<0 (default), the number will be typically OMP_NUM_THREADS or the number N defined by ‘yade -jN’ (this behavior can depend on the engine though). This attribute will only affect engines whose code includes openMP parallel regions (e.g. InteractionLoop). This attribute is mostly useful for experiments or when combining ParallelEngine with engines that run parallel regions, resulting in nested OMP loops with different number of threads at each level.
-
shear_creep
(=false)¶ activate creep on the shear force, using CohesiveFrictionalContactLaw::creep_viscosity.
-
timingDeltas
¶ Detailed information about timing inside the Engine itself. Empty unless enabled in the source code and O.timingEnabled==
True
.
-
twist_creep
(=false)¶ activate creep on the twisting moment, using CohesiveFrictionalContactLaw::creep_viscosity.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
ElasticContactLaw
(inherits GlobalEngine → Engine → Serializable)¶ [DEPRECATED] Loop over interactions applying Law2_ScGeom_FrictPhys_CundallStrack on all interactions.
Note
Use InteractionLoop and Law2_ScGeom_FrictPhys_CundallStrack instead of this class for performance reasons.
-
dead
(=false)¶ If true, this engine will not run at all; can be used for making an engine temporarily deactivated and only resurrect it at a later point.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
execCount
¶ Cumulative count this engine was run (only used if O.timingEnabled==
True
).
-
execTime
¶ Cumulative time in nanoseconds this Engine took to run (only used if O.timingEnabled==
True
).
-
label
(=uninitalized)¶ Textual label for this object; must be valid python identifier, you can refer to it directly from python.
-
neverErase
(=false)¶ Keep interactions even if particles go away from each other (only in case another constitutive law is in the scene, e.g. Law2_ScGeom_CapillaryPhys_Capillarity)
-
ompThreads
(=-1)¶ Number of threads to be used in the engine. If ompThreads<0 (default), the number will be typically OMP_NUM_THREADS or the number N defined by ‘yade -jN’ (this behavior can depend on the engine though). This attribute will only affect engines whose code includes openMP parallel regions (e.g. InteractionLoop). This attribute is mostly useful for experiments or when combining ParallelEngine with engines that run parallel regions, resulting in nested OMP loops with different number of threads at each level.
-
timingDeltas
¶ Detailed information about timing inside the Engine itself. Empty unless enabled in the source code and O.timingEnabled==
True
.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
FEInternalForceEngine
(inherits GlobalEngine → Engine → Serializable)¶ Unified dispatcher for handling Finite Element internal force loop at every step, for parallel performance reasons.
Special constructor
Constructs from 3 lists of Ig2, Ip2, Law functors respectively; they will be passed to interal dispatchers, which you might retrieve.
-
dead
(=false)¶ If true, this engine will not run at all; can be used for making an engine temporarily deactivated and only resurrect it at a later point.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
execCount
¶ Cumulative count this engine was run (only used if O.timingEnabled==
True
).
-
execTime
¶ Cumulative time in nanoseconds this Engine took to run (only used if O.timingEnabled==
True
).
-
internalforcedispatcher
(=new InternalForceDispatcher)¶ InternalForceDispatcher object that is used for dispatching of element types.
-
label
(=uninitalized)¶ Textual label for this object; must be valid python identifier, you can refer to it directly from python.
-
ompThreads
(=-1)¶ Number of threads to be used in the engine. If ompThreads<0 (default), the number will be typically OMP_NUM_THREADS or the number N defined by ‘yade -jN’ (this behavior can depend on the engine though). This attribute will only affect engines whose code includes openMP parallel regions (e.g. InteractionLoop). This attribute is mostly useful for experiments or when combining ParallelEngine with engines that run parallel regions, resulting in nested OMP loops with different number of threads at each level.
-
timingDeltas
¶ Detailed information about timing inside the Engine itself. Empty unless enabled in the source code and O.timingEnabled==
True
.
-
updateAttrs
((Serializable)arg1, (dict)arg2) → None :¶ Update object attributes from given dictionary
-
-
class
yade.wrapper.
FacetTopologyAnalyzer
(inherits GlobalEngine → Engine → Serializable)¶ Initializer for filling adjacency geometry data for facets.
Common vertices and common edges are identified and mutual angle between facet faces is written to Facet instances. If facets don’t move with respect to each other, this must be done only at the beginng.
-
commonEdgesFound
(=0)¶ how many common edges were identified during last run. (auto-updated)
-
commonVerticesFound
(=0)¶ how many common vertices were identified during last run. (auto-updated)
-
dead
(=false)¶ If true, this engine will not run at all; can be used for making an engine temporarily deactivated and only resurrect it at a later point.
-
dict
((Serializable)arg1) → dict :¶ Return dictionary of attributes.
-
execCount
¶ Cumulative count this engine was run (only used if O.timingEnabled==
True
).
-