Yade wrapper class reference

Bodies

Body

Shape

digraph Shape {
        rankdir=RL;
        margin="0.2,0.05";
        "Shape" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Shape"];
        "Cylinder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Cylinder"];
        "Cylinder" -> "Sphere" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Subdomain" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Subdomain"];
        "Subdomain" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Polyhedra" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Polyhedra"];
        "Polyhedra" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LevelSet" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LevelSet"];
        "LevelSet" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Wall" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Wall"];
        "Wall" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Facet" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Facet"];
        "Facet" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ChainedCylinder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ChainedCylinder"];
        "ChainedCylinder" -> "Cylinder" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Clump" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Clump"];
        "Clump" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PotentialParticle" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PotentialParticle"];
        "PotentialParticle" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Box" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Box"];
        "Box" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GridConnection" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GridConnection"];
        "GridConnection" -> "Sphere" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Lin4NodeTetra_Lin4NodeTetra_InteractionElement" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Lin4NodeTetra_Lin4NodeTetra_InteractionElement"];
        "Lin4NodeTetra_Lin4NodeTetra_InteractionElement" -> "DeformableCohesiveElement" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "DeformableCohesiveElement" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.DeformableCohesiveElement"];
        "DeformableCohesiveElement" -> "DeformableElement" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PFacet" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PFacet"];
        "PFacet" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GridNode" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GridNode"];
        "GridNode" -> "Sphere" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PotentialBlock" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PotentialBlock"];
        "PotentialBlock" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "DeformableElement" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.DeformableElement"];
        "DeformableElement" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Tetra" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Tetra"];
        "Tetra" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Lin4NodeTetra" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Lin4NodeTetra"];
        "Lin4NodeTetra" -> "DeformableElement" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Sphere" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Sphere"];
        "Sphere" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FluidDomainBbox" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FluidDomainBbox"];
        "FluidDomainBbox" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Node" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Node"];
        "Node" -> "Shape" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of Shape.

class yade.wrapper.Box(inherits Shape Serializable)
property color

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.

property dispIndex

Return class index of this instance.

property extents

Half-size of the cuboid

getVolume((Box)arg1) float :

Returns the shape volume.

property highlight

Whether this Shape will be highlighted when rendered.

updateAttrs((Serializable)arg1, (dict)arg2) None :

Update object attributes from given dictionary

property wire

Whether this Shape is rendered using color surfaces, or only wireframe (can still be overridden by global config of the renderer).

State

digraph State {
        rankdir=RL;
        margin="0.2,0.05";
        "State" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.State"];
        "ChainedState" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ChainedState"];
        "ChainedState" -> "State" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "SegmentedState" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.SegmentedState"];
        "SegmentedState" -> "State" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "WireState" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.WireState"];
        "WireState" -> "State" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ThermalState" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ThermalState"];
        "ThermalState" -> "State" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "JCFpmState" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.JCFpmState"];
        "JCFpmState" -> "ThermalState" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PartialSatState" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PartialSatState"];
        "PartialSatState" -> "State" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CpmState" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CpmState"];
        "CpmState" -> "State" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of State.

Material

digraph Material {
        rankdir=RL;
        margin="0.2,0.05";
        "Material" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Material"];
        "CohFrictMatSeg" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CohFrictMatSeg"];
        "CohFrictMatSeg" -> "CohFrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ViscElMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ViscElMat"];
        "ViscElMat" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "WireMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.WireMat"];
        "WireMat" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CohesiveDeformableElementMaterial" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CohesiveDeformableElementMaterial"];
        "CohesiveDeformableElementMaterial" -> "Material" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PolyhedraMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PolyhedraMat"];
        "PolyhedraMat" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "BubbleMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.BubbleMat"];
        "BubbleMat" -> "Material" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "DeformableElementMaterial" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.DeformableElementMaterial"];
        "DeformableElementMaterial" -> "Material" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LinCohesiveStiffPropDampElastMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LinCohesiveStiffPropDampElastMat"];
        "LinCohesiveStiffPropDampElastMat" -> "LinCohesiveElasticMaterial" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FrictMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FrictMat"];
        "FrictMat" -> "ElastMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PartialSatMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PartialSatMat"];
        "PartialSatMat" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "InelastCohFrictMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.InelastCohFrictMat"];
        "InelastCohFrictMat" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "JCFpmMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.JCFpmMat"];
        "JCFpmMat" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FrictMatCDM" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FrictMatCDM"];
        "FrictMatCDM" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CohFrictMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CohFrictMat"];
        "CohFrictMat" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FrictViscoMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FrictViscoMat"];
        "FrictViscoMat" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ElastMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ElastMat"];
        "ElastMat" -> "Material" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LinIsoElastMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LinIsoElastMat"];
        "LinIsoElastMat" -> "DeformableElementMaterial" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CpmMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CpmMat"];
        "CpmMat" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ViscElCapMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ViscElCapMat"];
        "ViscElCapMat" -> "ViscElMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LinIsoRayleighDampElastMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LinIsoRayleighDampElastMat"];
        "LinIsoRayleighDampElastMat" -> "LinIsoElastMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LudingMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LudingMat"];
        "LudingMat" -> "Material" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MortarMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MortarMat"];
        "MortarMat" -> "FrictMat" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LinCohesiveElasticMaterial" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LinCohesiveElasticMaterial"];
        "LinCohesiveElasticMaterial" -> "CohesiveDeformableElementMaterial" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of Material.

Bound

digraph Bound {
        rankdir=RL;
        margin="0.2,0.05";
        "Bound" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bound"];
        "Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Aabb"];
        "Aabb" -> "Bound" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of Bound.

Interactions

Interaction

IGeom

digraph IGeom {
        rankdir=RL;
        margin="0.2,0.05";
        "IGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.IGeom"];
        "ChCylGeom6D" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ChCylGeom6D"];
        "ChCylGeom6D" -> "ScGeom6D" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CylScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CylScGeom"];
        "CylScGeom" -> "ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GridNodeGeom6D" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GridNodeGeom6D"];
        "GridNodeGeom6D" -> "ScGeom6D" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "VolumeGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.VolumeGeom"];
        "VolumeGeom" -> "IGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MultiScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MultiScGeom"];
        "MultiScGeom" -> "IGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ScGridCoGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ScGridCoGeom"];
        "ScGridCoGeom" -> "ScGeom6D" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "L6Geom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.L6Geom"];
        "L6Geom" -> "L3Geom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LSnodeGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LSnodeGeom"];
        "LSnodeGeom" -> "ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GenericSpheresContact" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GenericSpheresContact"];
        "GenericSpheresContact" -> "IGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TTetraGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TTetraGeom"];
        "TTetraGeom" -> "IGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ScGeom6D" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ScGeom6D"];
        "ScGeom6D" -> "ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TTetraSimpleGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TTetraSimpleGeom"];
        "TTetraSimpleGeom" -> "IGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ScGeom"];
        "ScGeom" -> "GenericSpheresContact" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PolyhedraGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PolyhedraGeom"];
        "PolyhedraGeom" -> "IGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CylScGeom6D" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CylScGeom6D"];
        "CylScGeom6D" -> "ScGeom6D" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "L3Geom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.L3Geom"];
        "L3Geom" -> "GenericSpheresContact" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GridCoGridCoGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GridCoGridCoGeom"];
        "GridCoGridCoGeom" -> "ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of IGeom.

IPhys

digraph IPhys {
        rankdir=RL;
        margin="0.2,0.05";
        "IPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.IPhys"];
        "CapillaryPhysDelaunay" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CapillaryPhysDelaunay"];
        "CapillaryPhysDelaunay" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "JCFpmPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.JCFpmPhys"];
        "JCFpmPhys" -> "NormShearPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "KnKsPBPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.KnKsPBPhys"];
        "KnKsPBPhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "NormPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.NormPhys"];
        "NormPhys" -> "IPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ViscElCapPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ViscElCapPhys"];
        "ViscElCapPhys" -> "ViscElPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FrictPhys"];
        "FrictPhys" -> "NormShearPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MindlinCapillaryPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MindlinCapillaryPhys"];
        "MindlinCapillaryPhys" -> "MindlinPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "NormShearPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.NormShearPhys"];
        "NormShearPhys" -> "NormPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LudingPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LudingPhys"];
        "LudingPhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LubricationPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LubricationPhys"];
        "LubricationPhys" -> "ViscElPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CpmPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CpmPhys"];
        "CpmPhys" -> "NormShearPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MultiViscElPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MultiViscElPhys"];
        "MultiViscElPhys" -> "MultiPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MindlinPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MindlinPhys"];
        "MindlinPhys" -> "RotStiffFrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ViscElPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ViscElPhys"];
        "ViscElPhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "InelastCohFrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.InelastCohFrictPhys"];
        "InelastCohFrictPhys" -> "RotStiffFrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MultiPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MultiPhys"];
        "MultiPhys" -> "IPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ViscoFrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ViscoFrictPhys"];
        "ViscoFrictPhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "RotStiffFrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.RotStiffFrictPhys"];
        "RotStiffFrictPhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CapillaryMindlinPhysDelaunay" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CapillaryMindlinPhysDelaunay"];
        "CapillaryMindlinPhysDelaunay" -> "MindlinPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MindlinPhysCDM" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MindlinPhysCDM"];
        "MindlinPhysCDM" -> "MindlinPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "WirePhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.WirePhys"];
        "WirePhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MultiFrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MultiFrictPhys"];
        "MultiFrictPhys" -> "MultiPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FrictViscoPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FrictViscoPhys"];
        "FrictViscoPhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CapillaryPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CapillaryPhys"];
        "CapillaryPhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CohFrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CohFrictPhys"];
        "CohFrictPhys" -> "RotStiffFrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "BubblePhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.BubblePhys"];
        "BubblePhys" -> "IPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "KnKsPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.KnKsPhys"];
        "KnKsPhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PolyhedraPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PolyhedraPhys"];
        "PolyhedraPhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MortarPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MortarPhys"];
        "MortarPhys" -> "FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of IPhys.

Global engines

GlobalEngine

digraph GlobalEngine {
        rankdir=RL;
        margin="0.2,0.05";
        "GlobalEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlobalEngine"];
        "TimeStepper" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TimeStepper"];
        "TimeStepper" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MicroMacroAnalyser" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MicroMacroAnalyser"];
        "MicroMacroAnalyser" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PeriodicEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphperiodicengine"];
        "PeriodicEngine" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FieldApplier" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphfieldapplier"];
        "FieldApplier" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FoamCoupling" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FoamCoupling"];
        "FoamCoupling" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CapillarityEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CapillarityEngine"];
        "CapillarityEngine" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "NewtonIntegrator" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.NewtonIntegrator"];
        "NewtonIntegrator" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_CapillaryPhys_Capillarity" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_CapillaryPhys_Capillarity"];
        "Law2_ScGeom_CapillaryPhys_Capillarity" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ElasticContactLaw" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ElasticContactLaw"];
        "ElasticContactLaw" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "BoundaryController" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphboundarycontroller"];
        "BoundaryController" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CohesiveFrictionalContactLaw" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CohesiveFrictionalContactLaw"];
        "CohesiveFrictionalContactLaw" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Collider" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphcollider"];
        "Collider" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TesselationWrapper" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TesselationWrapper"];
        "TesselationWrapper" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "HydrodynamicsLawLBM" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.HydrodynamicsLawLBM"];
        "HydrodynamicsLawLBM" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GlobalStiffnessTimeStepper" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlobalStiffnessTimeStepper"];
        "GlobalStiffnessTimeStepper" -> "TimeStepper" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "BoxFactory" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.BoxFactory"];
        "BoxFactory" -> "SpheresFactory" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "InteractionLoop" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.InteractionLoop"];
        "InteractionLoop" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Integrator" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Integrator"];
        "Integrator" -> "TimeStepper" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "RungeKuttaCashKarp54Integrator" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.RungeKuttaCashKarp54Integrator"];
        "RungeKuttaCashKarp54Integrator" -> "Integrator" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TetraVolumetricLaw" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TetraVolumetricLaw"];
        "TetraVolumetricLaw" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FacetTopologyAnalyzer" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FacetTopologyAnalyzer"];
        "FacetTopologyAnalyzer" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FEInternalForceEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FEInternalForceEngine"];
        "FEInternalForceEngine" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ForceResetter" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ForceResetter"];
        "ForceResetter" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "SpheresFactory" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.SpheresFactory"];
        "SpheresFactory" -> "GlobalEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CircularFactory" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CircularFactory"];
        "CircularFactory" -> "SpheresFactory" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of GlobalEngine, gray dashed classes are discussed in their own sections: PeriodicEngine, FieldApplier, BoundaryController, Collider.

PeriodicEngine

digraph PeriodicEngine {
        rankdir=RL;
        margin="0.2,0.05";
        "PeriodicEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PeriodicEngine"];
        "DomainLimiter" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.DomainLimiter"];
        "DomainLimiter" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "RockLiningGlobal" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.RockLiningGlobal"];
        "RockLiningGlobal" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CapillaryStressRecorder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CapillaryStressRecorder"];
        "CapillaryStressRecorder" -> "Recorder" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PDFEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PDFEngine"];
        "PDFEngine" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "SnapshotEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.SnapshotEngine"];
        "SnapshotEngine" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TriaxialStateRecorder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TriaxialStateRecorder"];
        "TriaxialStateRecorder" -> "Recorder" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ForceRecorder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ForceRecorder"];
        "ForceRecorder" -> "Recorder" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PotentialBlockVTKRecorder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PotentialBlockVTKRecorder"];
        "PotentialBlockVTKRecorder" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "SegmentedMatSprinkler" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.SegmentedMatSprinkler"];
        "SegmentedMatSprinkler" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ResetRandomPosition" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ResetRandomPosition"];
        "ResetRandomPosition" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "SplitPolyMohrCoulomb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.SplitPolyMohrCoulomb"];
        "SplitPolyMohrCoulomb" -> "PolyhedraSplitter" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PolyhedraSplitter" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PolyhedraSplitter"];
        "PolyhedraSplitter" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Recorder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Recorder"];
        "Recorder" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PyRunner" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PyRunner"];
        "PyRunner" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "SegmentedStateUpdater" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.SegmentedStateUpdater"];
        "SegmentedStateUpdater" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CpmStateUpdater" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CpmStateUpdater"];
        "CpmStateUpdater" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "MeasureCapStress" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.MeasureCapStress"];
        "MeasureCapStress" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "RockBolt" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.RockBolt"];
        "RockBolt" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TorqueRecorder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TorqueRecorder"];
        "TorqueRecorder" -> "Recorder" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LubricationPDFEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LubricationPDFEngine"];
        "LubricationPDFEngine" -> "PDFEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PotentialParticleVTKRecorder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PotentialParticleVTKRecorder"];
        "PotentialParticleVTKRecorder" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "SplitPolyTauMax" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.SplitPolyTauMax"];
        "SplitPolyTauMax" -> "PolyhedraSplitter" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "VTKRecorder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.VTKRecorder"];
        "VTKRecorder" -> "PeriodicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of PeriodicEngine.

BoundaryController

digraph BoundaryController {
        rankdir=RL;
        margin="0.2,0.05";
        "BoundaryController" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.BoundaryController"];
        "VESupportEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.VESupportEngine"];
        "VESupportEngine" -> "BoundaryController" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "KinemSimpleShearBox" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.KinemSimpleShearBox"];
        "KinemSimpleShearBox" -> "BoundaryController" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Disp2DPropLoadEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Disp2DPropLoadEngine"];
        "Disp2DPropLoadEngine" -> "BoundaryController" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "KinemCNSEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.KinemCNSEngine"];
        "KinemCNSEngine" -> "KinemSimpleShearBox" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "KinemCNLEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.KinemCNLEngine"];
        "KinemCNLEngine" -> "KinemSimpleShearBox" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "KinemCNDEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.KinemCNDEngine"];
        "KinemCNDEngine" -> "KinemSimpleShearBox" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TriaxialStressController" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TriaxialStressController"];
        "TriaxialStressController" -> "BoundaryController" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TriaxialCompressionEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TriaxialCompressionEngine"];
        "TriaxialCompressionEngine" -> "TriaxialStressController" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "UniaxialStrainer" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.UniaxialStrainer"];
        "UniaxialStrainer" -> "BoundaryController" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PeriIsoCompressor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PeriIsoCompressor"];
        "PeriIsoCompressor" -> "BoundaryController" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PeriTriaxController" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PeriTriaxController"];
        "PeriTriaxController" -> "BoundaryController" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ThreeDTriaxialEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ThreeDTriaxialEngine"];
        "ThreeDTriaxialEngine" -> "TriaxialStressController" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "KinemCTDEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.KinemCTDEngine"];
        "KinemCTDEngine" -> "KinemSimpleShearBox" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Peri3dController" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Peri3dController"];
        "Peri3dController" -> "BoundaryController" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of BoundaryController.

Collider

digraph Collider {
        rankdir=RL;
        margin="0.2,0.05";
        "Collider" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Collider"];
        "InsertionSortCollider" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.InsertionSortCollider"];
        "InsertionSortCollider" -> "Collider" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GeneralIntegratorInsertionSortCollider" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GeneralIntegratorInsertionSortCollider"];
        "GeneralIntegratorInsertionSortCollider" -> "InsertionSortCollider" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "SpatialQuickSortCollider" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.SpatialQuickSortCollider"];
        "SpatialQuickSortCollider" -> "Collider" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FlatGridCollider" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FlatGridCollider"];
        "FlatGridCollider" -> "Collider" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of Collider.

FieldApplier

digraph FieldApplier {
        rankdir=RL;
        margin="0.2,0.05";
        "FieldApplier" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FieldApplier"];
        "CentralConstantAccelerationEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CentralConstantAccelerationEngine"];
        "CentralConstantAccelerationEngine" -> "FieldApplier" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GravityEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GravityEngine"];
        "GravityEngine" -> "FieldApplier" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "HdapsGravityEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.HdapsGravityEngine"];
        "HdapsGravityEngine" -> "GravityEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "AxialGravityEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.AxialGravityEngine"];
        "AxialGravityEngine" -> "FieldApplier" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of FieldApplier.

Partial engines

digraph PartialEngine {
        rankdir=RL;
        margin="0.2,0.05";
        "PartialEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PartialEngine"];
        "FlowEngineT" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FlowEngineT"];
        "FlowEngineT" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LawTester" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LawTester"];
        "LawTester" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "HarmonicMotionEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.HarmonicMotionEngine"];
        "HarmonicMotionEngine" -> "KinematicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ForceEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ForceEngine"];
        "ForceEngine" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "CombinedKinematicEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.CombinedKinematicEngine"];
        "CombinedKinematicEngine" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "InterpolatingDirectedForceEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.InterpolatingDirectedForceEngine"];
        "InterpolatingDirectedForceEngine" -> "ForceEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "StepDisplacer" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.StepDisplacer"];
        "StepDisplacer" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "UnsaturatedEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.UnsaturatedEngine"];
        "UnsaturatedEngine" -> "TwoPhaseFlowEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PeriodicFlowEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PeriodicFlowEngine"];
        "PeriodicFlowEngine" -> "FlowEngine_PeriodicInfo" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PartialSatClayEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PartialSatClayEngine"];
        "PartialSatClayEngine" -> "PartialSatClayEngineT" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "HydroForceEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.HydroForceEngine"];
        "HydroForceEngine" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "HelixEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.HelixEngine"];
        "HelixEngine" -> "RotationEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TimeAverager" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TimeAverager"];
        "TimeAverager" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FlowEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FlowEngine"];
        "FlowEngine" -> "FlowEngineT" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "InterpolatingHelixEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.InterpolatingHelixEngine"];
        "InterpolatingHelixEngine" -> "HelixEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "DragEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.DragEngine"];
        "DragEngine" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TwoPhaseFlowEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TwoPhaseFlowEngine"];
        "TwoPhaseFlowEngine" -> "TwoPhaseFlowEngineT" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "RadialForceEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.RadialForceEngine"];
        "RadialForceEngine" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "HarmonicForceEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.HarmonicForceEngine"];
        "HarmonicForceEngine" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TranslationEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TranslationEngine"];
        "TranslationEngine" -> "KinematicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "FlowEngine_PeriodicInfo" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FlowEngine_PeriodicInfo"];
        "FlowEngine_PeriodicInfo" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PartialSatClayEngineT" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PartialSatClayEngineT"];
        "PartialSatClayEngineT" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "BicyclePedalEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.BicyclePedalEngine"];
        "BicyclePedalEngine" -> "KinematicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ThermalEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ThermalEngine"];
        "ThermalEngine" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "HarmonicRotationEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.HarmonicRotationEngine"];
        "HarmonicRotationEngine" -> "RotationEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "ServoPIDController" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.ServoPIDController"];
        "ServoPIDController" -> "TranslationEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "KinematicEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.KinematicEngine"];
        "KinematicEngine" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TwoPhaseFlowEngineT" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TwoPhaseFlowEngineT"];
        "TwoPhaseFlowEngineT" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "TorqueEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TorqueEngine"];
        "TorqueEngine" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LinearDragEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LinearDragEngine"];
        "LinearDragEngine" -> "PartialEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "RotationEngine" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.RotationEngine"];
        "RotationEngine" -> "KinematicEngine" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of PartialEngine.

Dispatchers

digraph Dispatcher {
        rankdir=RL;
        margin="0.2,0.05";
        "Dispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Dispatcher"];
        "GlBoundDispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlBoundDispatcher"];
        "GlBoundDispatcher" -> "Dispatcher" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LawDispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#yade.wrapper.LawDispatcher"];
        "LawDispatcher" -> "Dispatcher" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "IPhysDispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#yade.wrapper.IPhysDispatcher"];
        "IPhysDispatcher" -> "Dispatcher" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "IGeomDispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#yade.wrapper.IGeomDispatcher"];
        "IGeomDispatcher" -> "Dispatcher" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "BoundDispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#yade.wrapper.BoundDispatcher"];
        "BoundDispatcher" -> "Dispatcher" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GlIGeomDispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlIGeomDispatcher"];
        "GlIGeomDispatcher" -> "Dispatcher" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GlShapeDispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlShapeDispatcher"];
        "GlShapeDispatcher" -> "Dispatcher" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GlIPhysDispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlIPhysDispatcher"];
        "GlIPhysDispatcher" -> "Dispatcher" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GlStateDispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlStateDispatcher"];
        "GlStateDispatcher" -> "Dispatcher" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "InternalForceDispatcher" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#yade.wrapper.InternalForceDispatcher"];
        "InternalForceDispatcher" -> "Dispatcher" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of Dispatcher, gray dashed classes are discussed in their own sections: LawDispatcher, IPhysDispatcher, IGeomDispatcher, BoundDispatcher, InternalForceDispatcher.

Functors

digraph Functor {
        rankdir=RL;
        margin="0.2,0.05";
        "Functor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Functor"];
        "GlBoundFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphglboundfunctor"];
        "GlBoundFunctor" -> "Functor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "BoundFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphboundfunctor"];
        "BoundFunctor" -> "Functor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GlStateFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#yade.wrapper.GlStateFunctor"];
        "GlStateFunctor" -> "Functor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GlIGeomFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphgligeomfunctor"];
        "GlIGeomFunctor" -> "Functor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "LawFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphlawfunctor"];
        "LawFunctor" -> "Functor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "IGeomFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphigeomfunctor"];
        "IGeomFunctor" -> "Functor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "IPhysFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphiphysfunctor"];
        "IPhysFunctor" -> "Functor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GlShapeFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphglshapefunctor"];
        "GlShapeFunctor" -> "Functor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "GlIPhysFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphgliphysfunctor"];
        "GlIPhysFunctor" -> "Functor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "InternalForceFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),filled,dashed",fillcolor=grey,height=0.2,URL="yade.wrapper.html#inheritancegraphinternalforcefunctor"];
        "InternalForceFunctor" -> "Functor" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of Functor, gray dashed classes are discussed in their own sections: GlBoundFunctor, BoundFunctor, GlStateFunctor, GlIGeomFunctor, LawFunctor, IGeomFunctor, IPhysFunctor, GlShapeFunctor, GlIPhysFunctor, InternalForceFunctor.

Bounding volume creation

BoundFunctor

digraph BoundFunctor {
        rankdir=RL;
        margin="0.2,0.05";
        "BoundFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.BoundFunctor"];
        "Bo1_GridConnection_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_GridConnection_Aabb"];
        "Bo1_GridConnection_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_Tetra_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_Tetra_Aabb"];
        "Bo1_Tetra_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_Wall_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_Wall_Aabb"];
        "Bo1_Wall_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_DeformableElement_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_DeformableElement_Aabb"];
        "Bo1_DeformableElement_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_Polyhedra_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_Polyhedra_Aabb"];
        "Bo1_Polyhedra_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_PFacet_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_PFacet_Aabb"];
        "Bo1_PFacet_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PotentialBlock2AABB" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PotentialBlock2AABB"];
        "PotentialBlock2AABB" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_Subdomain_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_Subdomain_Aabb"];
        "Bo1_Subdomain_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_LevelSet_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_LevelSet_Aabb"];
        "Bo1_LevelSet_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_ChainedCylinder_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_ChainedCylinder_Aabb"];
        "Bo1_ChainedCylinder_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_Cylinder_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_Cylinder_Aabb"];
        "Bo1_Cylinder_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_Box_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_Box_Aabb"];
        "Bo1_Box_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_Sphere_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_Sphere_Aabb"];
        "Bo1_Sphere_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_FluidDomainBbox_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_FluidDomainBbox_Aabb"];
        "Bo1_FluidDomainBbox_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "PotentialParticle2AABB" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.PotentialParticle2AABB"];
        "PotentialParticle2AABB" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_Facet_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_Facet_Aabb"];
        "Bo1_Facet_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Bo1_Node_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Bo1_Node_Aabb"];
        "Bo1_Node_Aabb" -> "BoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of BoundFunctor.

BoundDispatcher

Interaction Geometry creation

IGeomFunctor

digraph IGeomFunctor {
        rankdir=RL;
        margin="0.2,0.05";
        "IGeomFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.IGeomFunctor"];
        "Ig2_Sphere_Polyhedra_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Sphere_Polyhedra_ScGeom"];
        "Ig2_Sphere_Polyhedra_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Wall_LevelSet_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Wall_LevelSet_ScGeom"];
        "Ig2_Wall_LevelSet_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Sphere_Sphere_L6Geom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Sphere_Sphere_L6Geom"];
        "Ig2_Sphere_Sphere_L6Geom" -> "Ig2_Sphere_Sphere_L3Geom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Sphere_ChainedCylinder_CylScGeom6D" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Sphere_ChainedCylinder_CylScGeom6D"];
        "Ig2_Sphere_ChainedCylinder_CylScGeom6D" -> "Ig2_Sphere_ChainedCylinder_CylScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Tetra_Tetra_TTetraGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Tetra_Tetra_TTetraGeom"];
        "Ig2_Tetra_Tetra_TTetraGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Box_Sphere_ScGeom6D" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Box_Sphere_ScGeom6D"];
        "Ig2_Box_Sphere_ScGeom6D" -> "Ig2_Box_Sphere_ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Facet_Polyhedra_PolyhedraGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Facet_Polyhedra_PolyhedraGeom"];
        "Ig2_Facet_Polyhedra_PolyhedraGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_PFacet_PFacet_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_PFacet_PFacet_ScGeom"];
        "Ig2_PFacet_PFacet_ScGeom" -> "Ig2_Sphere_PFacet_ScGridCoGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Polyhedra_Polyhedra_PolyhedraGeomOrScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Polyhedra_Polyhedra_PolyhedraGeomOrScGeom"];
        "Ig2_Polyhedra_Polyhedra_PolyhedraGeomOrScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Facet_Sphere_ScGeom6D" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Facet_Sphere_ScGeom6D"];
        "Ig2_Facet_Sphere_ScGeom6D" -> "Ig2_Facet_Sphere_ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_ChainedCylinder_ChainedCylinder_ScGeom6D" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_ChainedCylinder_ChainedCylinder_ScGeom6D"];
        "Ig2_ChainedCylinder_ChainedCylinder_ScGeom6D" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Sphere_LevelSet_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Sphere_LevelSet_ScGeom"];
        "Ig2_Sphere_LevelSet_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Tetra_Tetra_TTetraSimpleGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Tetra_Tetra_TTetraSimpleGeom"];
        "Ig2_Tetra_Tetra_TTetraSimpleGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_LevelSet_LevelSet_MultiScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_LevelSet_LevelSet_MultiScGeom"];
        "Ig2_LevelSet_LevelSet_MultiScGeom" -> "Ig2_LevelSet_LevelSet_ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_GridConnection_GridConnection_GridCoGridCoGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_GridConnection_GridConnection_GridCoGridCoGeom"];
        "Ig2_GridConnection_GridConnection_GridCoGridCoGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Wall_PFacet_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Wall_PFacet_ScGeom"];
        "Ig2_Wall_PFacet_ScGeom" -> "Ig2_Wall_Sphere_ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_LevelSet_LevelSet_LSnodeGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_LevelSet_LevelSet_LSnodeGeom"];
        "Ig2_LevelSet_LevelSet_LSnodeGeom" -> "Ig2_LevelSet_LevelSet_ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Wall_Sphere_L3Geom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Wall_Sphere_L3Geom"];
        "Ig2_Wall_Sphere_L3Geom" -> "Ig2_Sphere_Sphere_L3Geom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Facet_Sphere_L3Geom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Facet_Sphere_L3Geom"];
        "Ig2_Facet_Sphere_L3Geom" -> "Ig2_Sphere_Sphere_L3Geom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Box_Sphere_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Box_Sphere_ScGeom"];
        "Ig2_Box_Sphere_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Polyhedra_Polyhedra_PolyhedraGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Polyhedra_Polyhedra_PolyhedraGeom"];
        "Ig2_Polyhedra_Polyhedra_PolyhedraGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Facet_Sphere_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Facet_Sphere_ScGeom"];
        "Ig2_Facet_Sphere_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_GridConnection_PFacet_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_GridConnection_PFacet_ScGeom"];
        "Ig2_GridConnection_PFacet_ScGeom" -> "Ig2_Sphere_GridConnection_ScGridCoGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Sphere_Sphere_L3Geom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Sphere_Sphere_L3Geom"];
        "Ig2_Sphere_Sphere_L3Geom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_GridNode_GridNode_GridNodeGeom6D" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_GridNode_GridNode_GridNodeGeom6D"];
        "Ig2_GridNode_GridNode_GridNodeGeom6D" -> "Ig2_Sphere_Sphere_ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Box_LevelSet_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Box_LevelSet_ScGeom"];
        "Ig2_Box_LevelSet_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Wall_Polyhedra_PolyhedraGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Wall_Polyhedra_PolyhedraGeom"];
        "Ig2_Wall_Polyhedra_PolyhedraGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Polyhedra_Polyhedra_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Polyhedra_Polyhedra_ScGeom"];
        "Ig2_Polyhedra_Polyhedra_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_LevelSet_LevelSet_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_LevelSet_LevelSet_ScGeom"];
        "Ig2_LevelSet_LevelSet_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Wall_Sphere_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Wall_Sphere_ScGeom"];
        "Ig2_Wall_Sphere_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Sphere_ChainedCylinder_CylScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Sphere_ChainedCylinder_CylScGeom"];
        "Ig2_Sphere_ChainedCylinder_CylScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_LevelSet_LevelSet_VolumeGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_LevelSet_LevelSet_VolumeGeom"];
        "Ig2_LevelSet_LevelSet_VolumeGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Wall_LevelSet_MultiScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Wall_LevelSet_MultiScGeom"];
        "Ig2_Wall_LevelSet_MultiScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Sphere_PFacet_ScGridCoGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Sphere_PFacet_ScGridCoGeom"];
        "Ig2_Sphere_PFacet_ScGridCoGeom" -> "Ig2_Sphere_GridConnection_ScGridCoGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_PB_PB_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_PB_PB_ScGeom"];
        "Ig2_PB_PB_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Sphere_Sphere_ScGeom6D" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Sphere_Sphere_ScGeom6D"];
        "Ig2_Sphere_Sphere_ScGeom6D" -> "Ig2_Sphere_Sphere_ScGeom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_PP_PP_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_PP_PP_ScGeom"];
        "Ig2_PP_PP_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Wall_LevelSet_VolumeGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Wall_LevelSet_VolumeGeom"];
        "Ig2_Wall_LevelSet_VolumeGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Sphere_GridConnection_ScGridCoGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Sphere_GridConnection_ScGridCoGeom"];
        "Ig2_Sphere_GridConnection_ScGridCoGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ig2_Sphere_Sphere_ScGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ig2_Sphere_Sphere_ScGeom"];
        "Ig2_Sphere_Sphere_ScGeom" -> "IGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of IGeomFunctor.

IGeomDispatcher

Interaction Physics creation

IPhysFunctor

digraph IPhysFunctor {
        rankdir=RL;
        margin="0.2,0.05";
        "IPhysFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.IPhysFunctor"];
        "Ip2_FrictMat_FrictMat_MindlinCapillaryPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_MindlinCapillaryPhys"];
        "Ip2_FrictMat_FrictMat_MindlinCapillaryPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMat_ViscoFrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_ViscoFrictPhys"];
        "Ip2_FrictMat_FrictMat_ViscoFrictPhys" -> "Ip2_FrictMat_FrictMat_FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_CpmMat_CpmMat_CpmPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_CpmMat_CpmMat_CpmPhys"];
        "Ip2_CpmMat_CpmMat_CpmPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMat_MindlinPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_MindlinPhys"];
        "Ip2_FrictMat_FrictMat_MindlinPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_PolyhedraMat_FrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_PolyhedraMat_FrictPhys"];
        "Ip2_FrictMat_PolyhedraMat_FrictPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_MortarMat_MortarMat_MortarPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_MortarMat_MortarMat_MortarPhys"];
        "Ip2_MortarMat_MortarMat_MortarPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_2xInelastCohFrictMat_InelastCohFrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_2xInelastCohFrictMat_InelastCohFrictPhys"];
        "Ip2_2xInelastCohFrictMat_InelastCohFrictPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_ViscElMat_ViscElMat_MultiViscElPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_ViscElMat_ViscElMat_MultiViscElPhys"];
        "Ip2_ViscElMat_ViscElMat_MultiViscElPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMat_CapillaryPhysDelaunay" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_CapillaryPhysDelaunay"];
        "Ip2_FrictMat_FrictMat_CapillaryPhysDelaunay" -> "Ip2_FrictMat_FrictMat_FrictPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_BubbleMat_BubbleMat_BubblePhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_BubbleMat_BubbleMat_BubblePhys"];
        "Ip2_BubbleMat_BubbleMat_BubblePhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMat_LubricationPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_LubricationPhys"];
        "Ip2_FrictMat_FrictMat_LubricationPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMatCDM_FrictMatCDM_MindlinPhysCDM" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMatCDM_FrictMatCDM_MindlinPhysCDM"];
        "Ip2_FrictMatCDM_FrictMatCDM_MindlinPhysCDM" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictViscoMat_FrictViscoPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictViscoMat_FrictViscoPhys"];
        "Ip2_FrictMat_FrictViscoMat_FrictViscoPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_ViscElMat_ViscElMat_ViscElPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_ViscElMat_ViscElMat_ViscElPhys"];
        "Ip2_ViscElMat_ViscElMat_ViscElPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMat_MultiFrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_MultiFrictPhys"];
        "Ip2_FrictMat_FrictMat_MultiFrictPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_LudingMat_LudingMat_LudingPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_LudingMat_LudingMat_LudingPhys"];
        "Ip2_LudingMat_LudingMat_LudingPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_ElastMat_ElastMat_NormPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_ElastMat_ElastMat_NormPhys"];
        "Ip2_ElastMat_ElastMat_NormPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMat_KnKsPBPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_KnKsPBPhys"];
        "Ip2_FrictMat_FrictMat_KnKsPBPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_WireMat_WireMat_WirePhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_WireMat_WireMat_WirePhys"];
        "Ip2_WireMat_WireMat_WirePhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_CohFrictMatSeg_CohFrictMatSeg_CohFrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_CohFrictMatSeg_CohFrictMatSeg_CohFrictPhys"];
        "Ip2_CohFrictMatSeg_CohFrictMatSeg_CohFrictPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMat_KnKsPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_KnKsPhys"];
        "Ip2_FrictMat_FrictMat_KnKsPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMat_FrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_FrictPhys"];
        "Ip2_FrictMat_FrictMat_FrictPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_PartialSatMat_PartialSatMat_MindlinPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_PartialSatMat_PartialSatMat_MindlinPhys"];
        "Ip2_PartialSatMat_PartialSatMat_MindlinPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictViscoMat_FrictViscoMat_FrictViscoPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictViscoMat_FrictViscoMat_FrictViscoPhys"];
        "Ip2_FrictViscoMat_FrictViscoMat_FrictViscoPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMat_CapillaryPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_CapillaryPhys"];
        "Ip2_FrictMat_FrictMat_CapillaryPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_ElastMat_ElastMat_NormShearPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_ElastMat_ElastMat_NormShearPhys"];
        "Ip2_ElastMat_ElastMat_NormShearPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_ViscElCapMat_ViscElCapMat_ViscElCapPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_ViscElCapMat_ViscElCapMat_ViscElCapPhys"];
        "Ip2_ViscElCapMat_ViscElCapMat_ViscElCapPhys" -> "Ip2_ViscElMat_ViscElMat_ViscElPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMat_CapillaryMindlinPhysDelaunay" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMat_CapillaryMindlinPhysDelaunay"];
        "Ip2_FrictMat_FrictMat_CapillaryMindlinPhysDelaunay" -> "Ip2_FrictMat_FrictMat_MindlinPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_CohFrictMat_CohFrictMat_CohFrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_CohFrictMat_CohFrictMat_CohFrictPhys"];
        "Ip2_CohFrictMat_CohFrictMat_CohFrictPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys"];
        "Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_CpmMat_FrictPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_CpmMat_FrictPhys"];
        "Ip2_FrictMat_CpmMat_FrictPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_JCFpmMat_JCFpmMat_JCFpmPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_JCFpmMat_JCFpmMat_JCFpmPhys"];
        "Ip2_JCFpmMat_JCFpmMat_JCFpmPhys" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Ip2_FrictMat_FrictMatCDM_MindlinPhysCDM" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Ip2_FrictMat_FrictMatCDM_MindlinPhysCDM"];
        "Ip2_FrictMat_FrictMatCDM_MindlinPhysCDM" -> "IPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of IPhysFunctor.

IPhysDispatcher

Constitutive laws

LawFunctor

digraph LawFunctor {
        rankdir=RL;
        margin="0.2,0.05";
        "LawFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.LawFunctor"];
        "Law2_ScGeom_MindlinPhys_MindlinDeresiewitz" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_MindlinPhys_MindlinDeresiewitz"];
        "Law2_ScGeom_MindlinPhys_MindlinDeresiewitz" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_WirePhys_WirePM" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_WirePhys_WirePM"];
        "Law2_ScGeom_WirePhys_WirePM" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_SCG_KnKsPBPhys_KnKsPBLaw" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_SCG_KnKsPBPhys_KnKsPBLaw"];
        "Law2_SCG_KnKsPBPhys_KnKsPBLaw" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_CylScGeom6D_CohFrictPhys_CohesionMoment" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_CylScGeom6D_CohFrictPhys_CohesionMoment"];
        "Law2_CylScGeom6D_CohFrictPhys_CohesionMoment" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_VirtualLubricationPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_VirtualLubricationPhys"];
        "Law2_ScGeom_VirtualLubricationPhys" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_CylScGeom_FrictPhys_CundallStrack" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_CylScGeom_FrictPhys_CundallStrack"];
        "Law2_CylScGeom_FrictPhys_CundallStrack" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_BubblePhys_Bubble" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_BubblePhys_Bubble"];
        "Law2_ScGeom_BubblePhys_Bubble" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_MultiScGeom_MultiViscElPhys_Basic" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_MultiScGeom_MultiViscElPhys_Basic"];
        "Law2_MultiScGeom_MultiViscElPhys_Basic" -> "Law2_ScGeom_ViscElPhys_Basic" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_PotentialLubricationPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_PotentialLubricationPhys"];
        "Law2_ScGeom_PotentialLubricationPhys" -> "Law2_ScGeom_ImplicitLubricationPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_LudingPhys_Basic" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_LudingPhys_Basic"];
        "Law2_ScGeom_LudingPhys_Basic" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom6D_InelastCohFrictPhys_CohesionMoment" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom6D_InelastCohFrictPhys_CohesionMoment"];
        "Law2_ScGeom6D_InelastCohFrictPhys_CohesionMoment" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_MultiScGeom_MultiFrictPhys_CundallStrack" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_MultiScGeom_MultiFrictPhys_CundallStrack"];
        "Law2_MultiScGeom_MultiFrictPhys_CundallStrack" -> "Law2_ScGeom_FrictPhys_CundallStrack" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGridCoGeom_CohFrictPhys_CundallStrack" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGridCoGeom_CohFrictPhys_CundallStrack"];
        "Law2_ScGridCoGeom_CohFrictPhys_CundallStrack" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ChCylGeom6D_CohFrictPhys_CohesionMoment" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ChCylGeom6D_CohFrictPhys_CohesionMoment"];
        "Law2_ChCylGeom6D_CohFrictPhys_CohesionMoment" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_MindlinPhys_HertzWithLinearShear" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_MindlinPhys_HertzWithLinearShear"];
        "Law2_ScGeom_MindlinPhys_HertzWithLinearShear" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_L3Geom_FrictPhys_ElPerfPl" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_L3Geom_FrictPhys_ElPerfPl"];
        "Law2_L3Geom_FrictPhys_ElPerfPl" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_MindlinPhysCDM_HertzMindlinCDM" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_MindlinPhysCDM_HertzMindlinCDM"];
        "Law2_ScGeom_MindlinPhysCDM_HertzMindlinCDM" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_PolyhedraGeom_PolyhedraPhys_Volumetric" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_PolyhedraGeom_PolyhedraPhys_Volumetric"];
        "Law2_PolyhedraGeom_PolyhedraPhys_Volumetric" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_CpmPhys_Cpm" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_CpmPhys_Cpm"];
        "Law2_ScGeom_CpmPhys_Cpm" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_ViscoFrictPhys_CundallStrack" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_ViscoFrictPhys_CundallStrack"];
        "Law2_ScGeom_ViscoFrictPhys_CundallStrack" -> "Law2_ScGeom_FrictPhys_CundallStrack" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_ImplicitLubricationPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_ImplicitLubricationPhys"];
        "Law2_ScGeom_ImplicitLubricationPhys" -> "Law2_ScGeom_VirtualLubricationPhys" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_L6Geom_FrictPhys_Linear" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_L6Geom_FrictPhys_Linear"];
        "Law2_L6Geom_FrictPhys_Linear" -> "Law2_L3Geom_FrictPhys_ElPerfPl" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_VolumeGeom_FrictPhys_Elastic" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_VolumeGeom_FrictPhys_Elastic"];
        "Law2_VolumeGeom_FrictPhys_Elastic" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_TTetraSimpleGeom_NormPhys_Simple" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_TTetraSimpleGeom_NormPhys_Simple"];
        "Law2_TTetraSimpleGeom_NormPhys_Simple" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_SCG_KnKsPhys_KnKsLaw" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_SCG_KnKsPhys_KnKsLaw"];
        "Law2_SCG_KnKsPhys_KnKsLaw" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_ViscElPhys_Basic" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_ViscElPhys_Basic"];
        "Law2_ScGeom_ViscElPhys_Basic" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_GridCoGridCoGeom_FrictPhys_CundallStrack" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_GridCoGridCoGeom_FrictPhys_CundallStrack"];
        "Law2_GridCoGridCoGeom_FrictPhys_CundallStrack" -> "Law2_ScGeom_FrictPhys_CundallStrack" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_ViscElCapPhys_Basic" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_ViscElCapPhys_Basic"];
        "Law2_ScGeom_ViscElCapPhys_Basic" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_MortarPhys_Lourenco" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_MortarPhys_Lourenco"];
        "Law2_ScGeom_MortarPhys_Lourenco" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM"];
        "Law2_ScGeom_JCFpmPhys_JointedCohesiveFrictionalPM" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_FrictViscoPhys_CundallStrackVisco" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_FrictViscoPhys_CundallStrackVisco"];
        "Law2_ScGeom_FrictViscoPhys_CundallStrackVisco" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGridCoGeom_FrictPhys_CundallStrack" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGridCoGeom_FrictPhys_CundallStrack"];
        "Law2_ScGridCoGeom_FrictPhys_CundallStrack" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_VolumeGeom_ViscoFrictPhys_Elastic" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_VolumeGeom_ViscoFrictPhys_Elastic"];
        "Law2_VolumeGeom_ViscoFrictPhys_Elastic" -> "Law2_VolumeGeom_FrictPhys_Elastic" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_FrictPhys_CundallStrack" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_FrictPhys_CundallStrack"];
        "Law2_ScGeom_FrictPhys_CundallStrack" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom6D_CohFrictPhys_CohesionMoment" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom6D_CohFrictPhys_CohesionMoment"];
        "Law2_ScGeom6D_CohFrictPhys_CohesionMoment" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Law2_ScGeom_MindlinPhys_Mindlin" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Law2_ScGeom_MindlinPhys_Mindlin"];
        "Law2_ScGeom_MindlinPhys_Mindlin" -> "LawFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of LawFunctor.

LawDispatcher

Internal forces

InternalForceFunctor

digraph InternalForceFunctor {
        rankdir=RL;
        margin="0.2,0.05";
        "InternalForceFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.InternalForceFunctor"];
        "If2_Lin4NodeTetra_LinIsoRayleighDampElast" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.If2_Lin4NodeTetra_LinIsoRayleighDampElast"];
        "If2_Lin4NodeTetra_LinIsoRayleighDampElast" -> "InternalForceFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "If2_2xLin4NodeTetra_LinCohesiveStiffPropDampElastMat" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.If2_2xLin4NodeTetra_LinCohesiveStiffPropDampElastMat"];
        "If2_2xLin4NodeTetra_LinCohesiveStiffPropDampElastMat" -> "InternalForceFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of InternalForceFunctor.

InternalForceDispatcher

Callbacks

digraph IntrCallback {
        rankdir=RL;
        margin="0.2,0.05";
        "IntrCallback" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.IntrCallback"];
        "SumIntrForcesCb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.SumIntrForcesCb"];
        "SumIntrForcesCb" -> "IntrCallback" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of IntrCallback.

Preprocessors

digraph FileGenerator {
        rankdir=RL;
        margin="0.2,0.05";
        "FileGenerator" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.FileGenerator"];
        "TriaxialTest" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.TriaxialTest"];
        "TriaxialTest" -> "FileGenerator" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "SimpleShear" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.SimpleShear"];
        "SimpleShear" -> "FileGenerator" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "BlockGen" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.BlockGen"];
        "BlockGen" -> "FileGenerator" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of FileGenerator.

Rendering

OpenGLRenderer

GlShapeFunctor

digraph GlShapeFunctor {
        rankdir=RL;
        margin="0.2,0.05";
        "GlShapeFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlShapeFunctor"];
        "Gl1_PotentialParticle" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_PotentialParticle"];
        "Gl1_PotentialParticle" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_Tetra" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_Tetra"];
        "Gl1_Tetra" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_DeformableElement" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_DeformableElement"];
        "Gl1_DeformableElement" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_Cylinder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_Cylinder"];
        "Gl1_Cylinder" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_Wall" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_Wall"];
        "Gl1_Wall" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_Node" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_Node"];
        "Gl1_Node" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_ChainedCylinder" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_ChainedCylinder"];
        "Gl1_ChainedCylinder" -> "Gl1_Cylinder" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_PFacet" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_PFacet"];
        "Gl1_PFacet" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_Facet" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_Facet"];
        "Gl1_Facet" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_Box" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_Box"];
        "Gl1_Box" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_LevelSet" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_LevelSet"];
        "Gl1_LevelSet" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_Polyhedra" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_Polyhedra"];
        "Gl1_Polyhedra" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_GridConnection" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_GridConnection"];
        "Gl1_GridConnection" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_Sphere" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_Sphere"];
        "Gl1_Sphere" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_PotentialBlock" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_PotentialBlock"];
        "Gl1_PotentialBlock" -> "GlShapeFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of GlShapeFunctor.

GlStateFunctor

GlBoundFunctor

digraph GlBoundFunctor {
        rankdir=RL;
        margin="0.2,0.05";
        "GlBoundFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlBoundFunctor"];
        "Gl1_Aabb" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_Aabb"];
        "Gl1_Aabb" -> "GlBoundFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of GlBoundFunctor.

GlIGeomFunctor

digraph GlIGeomFunctor {
        rankdir=RL;
        margin="0.2,0.05";
        "GlIGeomFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlIGeomFunctor"];
        "Gl1_L6Geom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_L6Geom"];
        "Gl1_L6Geom" -> "Gl1_L3Geom" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_PolyhedraGeom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_PolyhedraGeom"];
        "Gl1_PolyhedraGeom" -> "GlIGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_L3Geom" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_L3Geom"];
        "Gl1_L3Geom" -> "GlIGeomFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of GlIGeomFunctor.

GlIPhysFunctor

digraph GlIPhysFunctor {
        rankdir=RL;
        margin="0.2,0.05";
        "GlIPhysFunctor" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.GlIPhysFunctor"];
        "Gl1_PolyhedraPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_PolyhedraPhys"];
        "Gl1_PolyhedraPhys" -> "GlIPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_NormPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_NormPhys"];
        "Gl1_NormPhys" -> "GlIPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
        "Gl1_CpmPhys" [shape="box",fontsize=8,style="setlinewidth(0.5),solid",height=0.2,URL="yade.wrapper.html#yade.wrapper.Gl1_CpmPhys"];
        "Gl1_CpmPhys" -> "GlIPhysFunctor" [arrowsize=0.5,style="setlinewidth(0.5)"];
}

Inheritance graph of GlIPhysFunctor.

Simulation data

Omega

class yade.wrapper.Omega

The whole YADE world made of one or, possibly, several scenes serving as independent simulations. The Omega instance is accessed as O, e.g., O.bodies

addScene((Omega)arg1) int :

Add new scene to Omega, returns its number

property bodies

Bodies in the current simulation (container supporting index access by id and iteration)

bufferFromIntrsct((Omega)arg1, (Subdomain)subdomain, (int)rank, (int)size, (bool)mirror) object :

returns a (char*) pointer to the underying buffer of intersections[rank], so that it can be overwritten. Size must be passed in advance. Pointer to mirrorIntersections[rank] is returned if mirror=True. Python syntax: bufferFromIntrsct(…)[:]=bytes(something)

property cell

Periodic Cell of the current scene (None if the scene is aperiodic).

childClassesNonrecursive((Omega)arg1, (str)arg2) list :

Return list of all classes deriving from given class, as registered in the class factory

disableGdb((Omega)arg1) None :

Revert SEGV and ABRT handlers to system defaults.

property dt

Current timestep (Δt) value. See dynDt for enabling/disabling automatic Δt updates through a TimeStepper.

property dynDt

Whether a TimeStepper (when present in O.engines) is used for dynamic Δt control.

property dynDtAvailable

Whether a TimeStepper is amongst O.engines, activated or not.

property energy

EnergyTracker of the current simulation. (meaningful only with O.trackEnergy)

property engines

List of engines in the simulation (corresponds to Scene::engines in C++ source code).

exitNoBacktrace((Omega)arg1[, (int)status=0]) None :

Disable SEGV handler and exit, optionally with given status number.

property filename

Filename under which the current simulation was saved (None if never saved).

property forceSyncCount

Counter for number of syncs in ForceContainer, for profiling purposes.

property forces

ForceContainer (forces, torques) in the current simulation.

property interactions

Access to interactions of simulation, by using

  1. id’s of both Bodies of the interactions, e.g. O.interactions[23,65]

  2. iteration over the whole container:

    for i in O.interactions: print i.id1,i.id2
    

Note

Iteration silently skips interactions that are not real.

intrsctToBytes((Omega)arg1, (Subdomain)subdomain, (int)rank, (bool)mirror) object :

returns a copy of intersections[rank] (a vector<int>) from a subdomain in the form of bytes. Returns a copy mirrorIntersections[rank] if mirror=True.

isChildClassOf((Omega)arg1, (str)arg2, (str)arg3) bool :

Tells whether the first class derives from the second one (both given as strings).

property iter

Get current step number

labeledEngine((Omega)arg1, (str)arg2) object :

Return instance of engine/functor with the given label. This function shouldn’t be called by the user directly; every ehange in O.engines will assign respective global python variables according to labels.

For example:

O.engines=[InsertionSortCollider(label=’collider’)]

collider.nBins=5 # collider has become a variable after assignment to O.engines automatically

load((Omega)arg1, (str)file[, (bool)quiet=False]) None :

Load simulation from file. The file should have been saved in the same version of Yade built or compiled with the same features, otherwise compatibility is not guaranteed. Compatibility may also be affected by different versions of external libraries such as Boost

loadTmp((Omega)arg1[, (str)mark=''[, (bool)quiet=False]]) None :

Load simulation previously stored in memory by saveTmp. mark optionally distinguishes multiple saved simulations

lsTmp((Omega)arg1) list :

Return list of all memory-saved simulations.

property materials

Shared materials; they can be accessed by id or by label

property miscParams

MiscParams in the simulation (Scene::mistParams), usually used to save serializables that don’t fit anywhere else, like GL functors

property numThreads

Get maximum number of threads openMP can use.

pause((Omega)arg1) None :

Stop simulation execution. (May be called from within the loop, and it will stop after the current step).

property periodic

Get/set whether the current scene is periodic or not (True/False).

plugins((Omega)arg1) list :

Return list of all plugins registered in the class factory.

property realtime

Return clock (human world) time the simulation has been running, in seconds.

reload((Omega)arg1[, (bool)quiet=False]) None :

Reload current simulation

reset((Omega)arg1) None :

Reset simulations completely (including another scenes!).

resetAllScenes((Omega)arg1) None :

Reset all scenes.

resetCurrentScene((Omega)arg1) None :

Reset current scene.

resetThisScene((Omega)arg1) None :

Reset current scene.

resetTime((Omega)arg1) None :

Reset simulation time: step number, virtual and real time. (Doesn’t touch anything else, including timings).

run((Omega)arg1[, (int)nSteps=-1[, (bool)wait=False]]) None :

Run the simulation. nSteps how many steps to run, then stop (if positive); wait will cause not returning to python until simulation will have stopped.

runEngine((Omega)arg1, (Engine)arg2) None :

Run given engine exactly once; simulation time, step number etc. will not be incremented (use only if you know what you do).

property running

Whether background thread is currently running a simulation.

save((Omega)arg1, (str)file[, (bool)quiet=False]) None :

Save current simulation to file (should be .xml or .xml.bz2 or .yade or .yade.gz). .xml files are bigger than .yade, but can be more or less easily (due to their size) opened and edited, e.g. with text editors. .bz2 and .gz correspond both to compressed versions. There are software requirements for successful reloads, see O.load.

saveTmp((Omega)arg1[, (str)mark=''[, (bool)quiet=False]]) None :

Save simulation to memory (disappears at shutdown), can be loaded later with loadTmp. mark optionally distinguishes different memory-saved simulations.

sceneToString((Omega)arg1) object :

Return the entire scene as a string. Equivalent to using O.save(…) except that the scene goes to a string instead of a file. (see also stringToScene())

property speed

Return current calculation speed [iter/sec].

step((Omega)arg1) None :

Advance the simulation by one step. Returns after the step will have finished.

property stopAtIter

Get/set number of iteration after which the simulation will stop.

property stopAtTime

Get/set time after which the simulation will stop.

stringToScene((Omega)arg1, (str)arg2[, (str)mark='']) None :

Load simulation from a string passed as argument (see also sceneToString).

property subStep

Get the current subStep number (only meaningful if O.subStepping==True); -1 when outside the loop, otherwise either 0 (O.subStepping==False) or number of engine to be run (O.subStepping==True)

property subStepping

Get/set whether subStepping is active.

switchScene((Omega)arg1) None :

Switch to alternative simulation (while keeping the old one). Calling the function again switches back to the first one. Note that most variables from the first simulation will still refer to the first simulation even after the switch (e.g. b=O.bodies[4]; O.switchScene(); [b still refers to the body in the first simulation here])

switchToScene((Omega)arg1, (int)arg2) None :

Switch to defined scene. Default scene has number 0, other scenes have to be created by addScene method.

property tags

Tags (string=string dictionary) of the current simulation (container supporting string-index access/assignment)

property thisScene

Return current scene’s id.

property time

Return virtual (model world) time of the simulation.

property timingEnabled

Globally enable/disable timing services (see documentation of the timing module).

tmpFilename((Omega)arg1) str :

Return unique name of file in temporary directory which will be deleted when yade exits.

tmpToFile((Omega)arg1, (str)fileName[, (str)mark='']) None :

Save XML of saveTmp’d simulation into fileName.

tmpToString((Omega)arg1[, (str)mark='']) str :

Return XML of saveTmp’d simulation as string.

property trackEnergy

When energy tracking is enabled or disabled in this simulation.

wait((Omega)arg1) None :

Don’t return until the simulation will have been paused. (Returns immediately if not running).

BodyContainer

class yade.wrapper.BodyContainer
__init__((object)arg1, (BodyContainer)arg2) None
addToClump((BodyContainer)arg1, (object)arg2, (int)arg3[, (int)discretization=0]) None :

Add body b (or a list of bodies) to an existing clump c. c must be clump and b may not be a clump member of c. Clump masses and inertia are adapted automatically (for details see clump()).

See examples/clumps/addToClump-example.py for an example script.

Note

If b is a clump itself, then all members will be added to c and b will be deleted. If b is a clump member of clump d, then all members from d will be added to c and d will be deleted. If you need to add just clump member b, release this member from d first.

append((BodyContainer)arg1, (Body)arg2) int :

Append one Body instance, return its id.

append( (BodyContainer)arg1, (object)arg2) -> object :

Append list of Body instance, return list of ids

appendClumped((BodyContainer)arg1, (object)arg2[, (int)discretization=0]) tuple :

Append given list of bodies as a clump (rigid aggregate); returns a tuple of (clumpId,[memberId1,memberId2,...]). Clump masses and inertia are computed automatically depending upon discretization (for details see clump()).

clear((BodyContainer)arg1) None :

Remove all bodies (interactions not checked)

clump((BodyContainer)arg1, (object)arg2[, (int)discretization=0]) int :

Clump given bodies together (creating a rigid aggregate); returns clumpId. A precise definition of clump masses and inertia when clump members overlap requires spherical members together with discretization>0 and is achieved in this case by integration/summation over mass points using a regular grid of cells (grid cells length is defined as \(L_{min}/discretization\), where \(L_{min}\) is the minimum length of an Axis-Aligned Bounding Box. If *discretization*<=0 sum of inertias from members is simply used, which is faster but accurate only for non-overlapping members).

deleteClumpBody((BodyContainer)arg1, (Body)arg2) None :

Erase clump member.

deleteClumpMember((BodyContainer)arg1, (Body)arg2, (Body)arg3) None :

Erase clump member.

property enableRedirection

let collider switch to optimized algorithm with body redirection when bodies are erased - true by default

erase((BodyContainer)arg1, (int)arg2[, (bool)eraseClumpMembers=0]) bool :

Erase body with the given id; all interaction will be deleted by InteractionLoop in the next step. If a clump is erased use O.bodies.erase(clumpId,True) to erase the clump AND its members.

getRoundness((BodyContainer)arg1[, (list)excludeList=[]]) float :

Returns roundness coefficient RC = R2/R1. R1 is the equivalent sphere radius of a clump. R2 is the minimum radius of a sphere, that imbeds the clump. If just spheres are present RC = 1. If clumps are present 0 < RC < 1. Bodies can be excluded from the calculation by giving a list of ids: O.bodies.getRoundness([ids]).

See examples/clumps/replaceByClumps-example.py for an example script.

insertAtId((BodyContainer)arg1, (Body)arg2, (int)insertatid) int :

Insert a body at theid, (no body should exist in this id)

releaseFromClump((BodyContainer)arg1, (int)arg2, (int)arg3[, (int)discretization=0]) None :

Release body b from clump c. b must be a clump member of c. Clump masses and inertia are adapted automatically (for details see clump()).

See examples/clumps/releaseFromClump-example.py for an example script.

Note

If c contains only 2 members b will not be released and a warning will appear. In this case clump c should be erased.

replace((BodyContainer)arg1, (object)arg2) object
replaceByClumps((BodyContainer)arg1, (list)arg2, (object)arg3[, (int)discretization=0]) list :

Replace spheres by clumps using a list of clump templates and a list of amounts; returns a list of tuples: [(clumpId1,[memberId1,memberId2,...]),(clumpId2,[memberId1,memberId2,...]),...]. A new clump will have the same volume as the sphere, that was replaced. Clump masses and inertia are adapted automatically (for details see clump()).

O.bodies.replaceByClumps( [utils.clumpTemplate([1,1],[.5,.5])] , [.9] ) #will replace 90 % of all standalone spheres by ‘dyads’

See examples/clumps/replaceByClumps-example.py for an example script.

subdomainBodies((BodyContainer)arg1) object :

id’s of bodies with bounds in MPI subdomain

updateClumpProperties((BodyContainer)arg1[, (list)excludeList=[][, (int)discretization=5]]) None :

Manually force Yade to update clump properties mass, volume and inertia (for details of ‘discretization’ value see clump()). Can be used, when clumps are modified or erased during a simulation. Clumps can be excluded from the calculation by giving a list of ids: O.bodies.updateProperties([ids]).

property useRedirection

true if the scene uses up-to-date lists for boundedBodies and realBodies; turned true automatically 1/ after removal of bodies if enableRedirection=True , and 2/ in MPI execution. (auto-updated)

InteractionContainer

class yade.wrapper.InteractionContainer

Access to interactions of simulation, by using

  1. id’s of both Bodies of the interactions, e.g. O.interactions[23,65]

  2. iteraction over the whole container:

    for i in O.interactions: print i.id1,i.id2
    

Note

Iteration silently skips interactions that are virtual i.e. not real.

__init__((object)arg1, (InteractionContainer)arg2) None
all((InteractionContainer)arg1[, (bool)onlyReal=False]) list :

Return list of all interactions. Virtual interaction are filtered out if onlyReal=True, else (default) it dumps the full content.

clear((InteractionContainer)arg1) None :

Remove all interactions, and invalidate persistent collider data (if the collider supports it).

countReal((InteractionContainer)arg1) int :

Return number of interactions that are real.

erase((InteractionContainer)arg1, (int)arg2, (int)arg3) None :

Erase one interaction, given by id1, id2 (internally, requestErase is called – the interaction might still exist as potential, if the Collider decides so).

eraseNonReal((InteractionContainer)arg1) None :

Erase all interactions that are not real .

has((InteractionContainer)arg1, (int)id1, (int)id2[, (bool)onlyReal=False]) bool :

Tell if a pair of ids id1, id2 corresponds to an existing interaction (real or not depending on onlyReal)

nth((InteractionContainer)arg1, (int)arg2) Interaction :

Return n-th interaction from the container (usable for picking random interaction). The virtual interactions are not reached.

property serializeSorted

None( (yade.wrapper.InteractionContainer)arg1) -> bool

withBody((InteractionContainer)arg1, (int)arg2) list :

Return list of real interactions of given body.

withBodyAll((InteractionContainer)arg1, (int)arg2) list :

Return list of all (real as well as non-real) interactions of given body.

ForceContainer

class yade.wrapper.ForceContainer
__init__((object)arg1, (ForceContainer)arg2) None
addF((ForceContainer)arg1, (int)id, (yade._minieigenHP.Vector3)f[, (bool)permanent=False]) None :

Apply force on body (accumulates). The force applies for one iteration, then it is reset by ForceResetter. # permanent parameter is deprecated, instead of addF(…,permanent=True) use setPermF(…).

addT((ForceContainer)arg1, (int)id, (yade._minieigenHP.Vector3)t[, (bool)permanent=False]) None :

Apply torque on body (accumulates). The torque applies for one iteration, then it is reset by ForceResetter. # permanent parameter is deprecated, instead of addT(…,permanent=True) use setPermT(…).

f((ForceContainer)arg1, (int)id[, (bool)sync=False]) yade._minieigenHP.Vector3 :

Resultant force on body, excluding gravity. For clumps in openMP, synchronize the force container with sync=True, else the value will be wrong.

getPermForceUsed((ForceContainer)arg1) bool :

Check wether permanent forces are present.

m((ForceContainer)arg1, (int)id[, (bool)sync=False]) yade._minieigenHP.Vector3 :

Deprecated alias for t (torque).

permF((ForceContainer)arg1, (int)id) yade._minieigenHP.Vector3 :

read the value of permanent force on body (set with setPermF()).

permT((ForceContainer)arg1, (int)id) yade._minieigenHP.Vector3 :

read the value of permanent torque on body (set with setPermT()).

reset((ForceContainer)arg1[, (bool)resetAll=True]) None :

Reset the force container, including user defined permanent forces/torques. resetAll=False will keep permanent forces/torques unchanged.

setPermF((ForceContainer)arg1, (int)arg2, (yade._minieigenHP.Vector3)arg3) None :

set the value of permanent force on body.

setPermT((ForceContainer)arg1, (int)arg2, (yade._minieigenHP.Vector3)arg3) None :

set the value of permanent torque on body.

property syncCount

Number of synchronizations of ForceContainer (cummulative); if significantly higher than number of steps, there might be unnecessary syncs hurting performance.

t((ForceContainer)arg1, (int)id[, (bool)sync=False]) yade._minieigenHP.Vector3 :

Torque applied on body. For clumps in openMP, synchronize the force container with sync=True, else the value will be wrong.

MaterialContainer

class yade.wrapper.MaterialContainer

Container for Materials. A material can be accessed using

  1. numerical index in range(0,len(cont)), like cont[2];

  2. textual label that was given to the material, like cont[‘steel’]. This entails traversing all materials and should not be used frequently.

__init__((object)arg1, (MaterialContainer)arg2) None
append((MaterialContainer)arg1, (Material)arg2) int :

Add new shared Material; changes its id and return it.

append( (MaterialContainer)arg1, (object)arg2) -> object :

Append list of Material instances, return list of ids.

index((MaterialContainer)arg1, (str)arg2) int :

Return id of material, given its label.

Scene

Cell

Other classes

class yade.wrapper.TimingDeltas
property data

Get timing data as list of tuples (label, execTime[nsec], execCount) (one tuple per checkpoint)

reset((TimingDeltas)arg1) None :

Reset timing information

class yade.wrapper.Serializable
dict((Serializable)arg1) dict :

Return dictionary of attributes.

updateAttrs((Serializable)arg1, (dict)arg2) None :

Update object attributes from given dictionary