Author: eudoxos
Date: 2009-06-29 10:55:00 +0200 (Mon, 29 Jun 2009)
New Revision: 1822

Modified:
   trunk/pkg/dem/Engine/StandAloneEngine/ElasticContactLaw.cpp
   trunk/pkg/dem/Engine/StandAloneEngine/ElasticContactLaw.hpp
   trunk/scripts/test-sphere-facet.py
   trunk/scripts/test/facet-sphere.py
   trunk/scripts/test/gts.py
   trunk/scripts/test/insertion-sort-collider.py
   trunk/scripts/test/regular-sphere-pack.py
Log:
1. Rename ef2_Dem3Dof_Elastic_ElasticLaw to Law2_Dem3Dof_Elastic_Elastic (in 
scripts as well)



Modified: trunk/pkg/dem/Engine/StandAloneEngine/ElasticContactLaw.cpp
===================================================================
--- trunk/pkg/dem/Engine/StandAloneEngine/ElasticContactLaw.cpp 2009-06-29 
08:47:31 UTC (rev 1821)
+++ trunk/pkg/dem/Engine/StandAloneEngine/ElasticContactLaw.cpp 2009-06-29 
08:55:00 UTC (rev 1822)
@@ -17,7 +17,7 @@
 
 #include<yade/extra/Shop.hpp>
 
-YADE_PLUGIN("ef2_Spheres_Elastic_ElasticLaw","ef2_Dem3Dof_Elastic_ElasticLaw","ElasticContactLaw");
+YADE_PLUGIN("ef2_Spheres_Elastic_ElasticLaw","Law2_Dem3Dof_Elastic_Elastic","ElasticContactLaw");
 
 
 ElasticContactLaw::ElasticContactLaw() : InteractionSolver()
@@ -112,7 +112,7 @@
 }
 
 // same as elasticContactLaw, but using Dem3DofGeom
-void ef2_Dem3Dof_Elastic_ElasticLaw::go(shared_ptr<InteractionGeometry>& ig, 
shared_ptr<InteractionPhysics>& ip, Interaction* contact, MetaBody* rootBody){
+void Law2_Dem3Dof_Elastic_Elastic::go(shared_ptr<InteractionGeometry>& ig, 
shared_ptr<InteractionPhysics>& ip, Interaction* contact, MetaBody* rootBody){
        Dem3DofGeom* geom=static_cast<Dem3DofGeom*>(ig.get());
        ElasticContactInteraction* 
phys=static_cast<ElasticContactInteraction*>(ip.get());
        Real displN=geom->displacementN();
@@ -120,6 +120,6 @@
        phys->normalForce=phys->kn*displN*geom->normal;
        Real 
maxFsSq=phys->normalForce.SquaredLength()*pow(phys->tangensOfFrictionAngle,2);
        Vector3r trialFs=phys->ks*geom->displacementT();
-       if(trialFs.SquaredLength()>maxFsSq){ 
geom->slipToDisplacementTMax(sqrt(maxFsSq)); 
trialFs*=maxFsSq/(trialFs.SquaredLength());} 
+       if(trialFs.SquaredLength()>maxFsSq){ 
geom->slipToDisplacementTMax(sqrt(maxFsSq)); 
trialFs*=sqrt(maxFsSq/(trialFs.SquaredLength()));} 
        
applyForceAtContactPoint(phys->normalForce+trialFs,geom->contactPoint,contact->getId1(),geom->se31.position,contact->getId2(),geom->se32.position,rootBody);
 }

Modified: trunk/pkg/dem/Engine/StandAloneEngine/ElasticContactLaw.hpp
===================================================================
--- trunk/pkg/dem/Engine/StandAloneEngine/ElasticContactLaw.hpp 2009-06-29 
08:47:31 UTC (rev 1821)
+++ trunk/pkg/dem/Engine/StandAloneEngine/ElasticContactLaw.hpp 2009-06-29 
08:55:00 UTC (rev 1822)
@@ -42,14 +42,20 @@
 };
 REGISTER_SERIALIZABLE(ef2_Spheres_Elastic_ElasticLaw);
 
-class ef2_Dem3Dof_Elastic_ElasticLaw: public ConstitutiveLaw{
+/* Constitutive law for linear compression, no tension, and linear plasticity 
surface.
+
+This class serves also as tutorial and is documented in detail at
+
+       http://yade.wikia.com/wiki/ConstitutiveLawHowto
+*/
+class Law2_Dem3Dof_Elastic_Elastic: public ConstitutiveLaw{
        public:
                virtual void go(shared_ptr<InteractionGeometry>& _geom, 
shared_ptr<InteractionPhysics>& _phys, Interaction* I, MetaBody* rootBody);
                FUNCTOR2D(Dem3DofGeom,ElasticContactInteraction);
-               
REGISTER_CLASS_AND_BASE(ef2_Dem3Dof_Elastic_ElasticLaw,ConstitutiveLaw);
+               
REGISTER_CLASS_AND_BASE(Law2_Dem3Dof_Elastic_Elastic,ConstitutiveLaw);
                REGISTER_ATTRIBUTES(ConstitutiveLaw,/*nothing here*/);
 };
-REGISTER_SERIALIZABLE(ef2_Dem3Dof_Elastic_ElasticLaw);
+REGISTER_SERIALIZABLE(Law2_Dem3Dof_Elastic_Elastic);
 
 class ElasticContactLaw : public InteractionSolver
 {

Modified: trunk/scripts/test/facet-sphere.py
===================================================================
--- trunk/scripts/test/facet-sphere.py  2009-06-29 08:47:31 UTC (rev 1821)
+++ trunk/scripts/test/facet-sphere.py  2009-06-29 08:55:00 UTC (rev 1822)
@@ -9,7 +9,7 @@
        InteractionDispatchers(
                [ef2_Facet_Sphere_Dem3DofGeom()],
                [SimpleElasticRelationships()],
-               [ef2_Dem3Dof_Elastic_ElasticLaw()],
+               [Law2_Dem3Dof_Elastic_Elastic()],
        ),
        GravityEngine(gravity=[0,0,-10]),
        NewtonsDampedLaw(damping=0.01),

Modified: trunk/scripts/test/gts.py
===================================================================
--- trunk/scripts/test/gts.py   2009-06-29 08:47:31 UTC (rev 1821)
+++ trunk/scripts/test/gts.py   2009-06-29 08:55:00 UTC (rev 1822)
@@ -33,7 +33,7 @@
        InteractionDispatchers(
                
[ef2_Sphere_Sphere_Dem3DofGeom(),ef2_Facet_Sphere_Dem3DofGeom()],
                [SimpleElasticRelationships()],
-               [ef2_Dem3Dof_Elastic_ElasticLaw()],
+               [Law2_Dem3Dof_Elastic_Elastic()],
        ),
        GravityEngine(gravity=[0,0,-1e4]),
        NewtonsDampedLaw(damping=.1)

Modified: trunk/scripts/test/insertion-sort-collider.py
===================================================================
--- trunk/scripts/test/insertion-sort-collider.py       2009-06-29 08:47:31 UTC 
(rev 1821)
+++ trunk/scripts/test/insertion-sort-collider.py       2009-06-29 08:55:00 UTC 
(rev 1822)
@@ -4,7 +4,7 @@
        BexResetter(),
        
BoundingVolumeMetaEngine([InteractingSphere2AABB(),InteractingBox2AABB(),InteractingFacet2AABB(),MetaInteractingGeometry2AABB()]),
        InsertionSortCollider(),
-       
InteractionDispatchers([ef2_Facet_Sphere_Dem3DofGeom()],[SimpleElasticRelationships()],[ef2_Dem3Dof_Elastic_ElasticLaw()],),
+       
InteractionDispatchers([ef2_Facet_Sphere_Dem3DofGeom()],[SimpleElasticRelationships()],[Law2_Dem3Dof_Elastic_Elastic()],),
        GravityEngine(gravity=[0,0,-10]),
        NewtonsDampedLaw(damping=0.01),
 ]

Modified: trunk/scripts/test/regular-sphere-pack.py
===================================================================
--- trunk/scripts/test/regular-sphere-pack.py   2009-06-29 08:47:31 UTC (rev 
1821)
+++ trunk/scripts/test/regular-sphere-pack.py   2009-06-29 08:55:00 UTC (rev 
1822)
@@ -50,7 +50,7 @@
        InteractionDispatchers(
                
[ef2_Sphere_Sphere_Dem3DofGeom(),ef2_Facet_Sphere_Dem3DofGeom()],
                [SimpleElasticRelationships()],
-               [ef2_Dem3Dof_Elastic_ElasticLaw()],
+               [Law2_Dem3Dof_Elastic_Elastic()],
        ),
        GravityEngine(gravity=(1e-2,1e-2,-1000)),
        NewtonsDampedLaw(damping=.1)

Modified: trunk/scripts/test-sphere-facet.py
===================================================================
--- trunk/scripts/test-sphere-facet.py  2009-06-29 08:47:31 UTC (rev 1821)
+++ trunk/scripts/test-sphere-facet.py  2009-06-29 08:55:00 UTC (rev 1822)
@@ -35,11 +35,11 @@
 #      ]),
 #      
MetaEngine('InteractionPhysicsMetaEngine',[EngineUnit('SimpleElasticRelationships')]),
 #      #StandAloneEngine('ElasticContactLaw'),
-#      ConstitutiveLawDispatcher([ef2_Dem3Dof_Elastic_ElasticLaw()]),
+#      ConstitutiveLawDispatcher([Law2_Dem3Dof_Elastic_Elastic()]),
        InteractionDispatchers(
                [ef2_Facet_Sphere_Dem3DofGeom()],
                [SimpleElasticRelationships()],
-               [ef2_Dem3Dof_Elastic_ElasticLaw()],
+               [Law2_Dem3Dof_Elastic_Elastic()],
        ),
        
DeusExMachina('GravityEngine',{'gravity':[0,0,-sign*500],'label':'gravitator'}),
        DeusExMachina("NewtonsDampedLaw",{'damping':0.8}),


_______________________________________________
Mailing list: https://launchpad.net/~yade-dev
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~yade-dev
More help   : https://help.launchpad.net/ListHelp

Reply via email to