Question #153589 on Yade changed:
https://answers.launchpad.net/yade/+question/153589

    Status: Answered => Open

Kneib François is still having a problem:
Ok I checked that and now my new Ig2_Sphere_ChainedCylinder_ScGeom6D is 
recognized in Yade.
Now I have a segmentation error when the CohFrictMat sphere touch the 
CohFrictMat cylinder.
Here's my Ig2_Sphere_ChainedCylinder_ScGeom6D::go method :

bool Ig2_Sphere_ChainedCylinder_ScGeom6D::go( const shared_ptr<Shape>& cm1, 
const shared_ptr<Shape>& cm2, const State& state1, const State& state2, const 
Vector3r& shift2, const bool& force, const shared_ptr<Interaction>& c)
{
        bool isNew = !c->geom;
        if 
(Ig2_Sphere_ChainedCylinder_CylScGeom::go(cm1,cm2,state1,state2,shift2,force,c)){//the
 3 DOFS from ScGeom are updated here
                if (isNew) {//generate a 6DOF interaction from the 3DOF one 
generated by Ig2_Sphere_Sphere_ScGeom
                        shared_ptr<ScGeom6D> sc (new ScGeom6D());
                        *(YADE_PTR_CAST<ScGeom>(sc)) = 
*(YADE_PTR_CAST<ScGeom>(c->geom));
                        c->geom=sc;}
                if (updateRotations) 
{YADE_PTR_CAST<ScGeom6D>(c->geom)->precomputeRotations(state1,state2,true,creep);}
                return true;
        }
        else return false;
}


I In fact when the updateRotations method is called, I put "true" instead of 
isnew so Yade never have to compute the rotation moments.
Maybe it's not the right way ...

-- 
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.

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

Reply via email to