← Back to team overview

yade-users team mailing list archive

Re: Probleme avec un mur à déplacer sous Python

 

> Je ne comprends pas pourquoi mon mur du dessus qui a une vitesse nulle
> se deplace à l'infini.
> Pourtant dans mon fichier j'ai bien mis:
>
> o.bodies[41]['isDynamic']=True;   #Premiere facette
> o.bodies[41].phys['velocity']=[0,0,0];  #Deuxième facette
> o.bodies[42]['isDynamic']=True;    #Premiere facette
> o.bodies[42].phys['velocity']=[0,0,0]   #Deuxième facette
>
>   
> DeusExMachina('TranslationEngine',{'subscribedBodies':[41],'velocity':0,'translationAxis':[0,0,-1]}), 
> #Premiere facette
>   
> DeusExMachina('TranslationEngine',{'subscribedBodies':[42],'velocity':0,'translationAxis':[0,0,-1]}), 
> #Deuxième facette
<footnote>
You can do this in a more efficient way:

 DeusExMachina('TranslationEngine',{'subscribedBodies':[41,42],'velocity':0,'translationAxis':[0,0,-1]}),
</footnote>

Well, it actually doesn't make much sense to have the body dynamic and
prescribe translation at the same time, does it? The problem of
displacement being infinity is that facets have zero mass (see
o.bodies[41].phys['mass']) and that doesn't do any good to the integrator.

I think that for the wall that does the compression, it would be perhaps
better to use regular box instead of facets; if you have it with
wire=True, you will even still see what is goig on down there.

I am not sure what you're trying to achieve? A box compressing spheres
from above, ok, but if it has contact speed, it will explode at one
point, since no force will stop that box. Wouldn't it be better to
actually prescribe force? But force will be constant, if you want to
change at runtime, you would need something more sophisticated, like
TriaxialTest, but only 1d.

HTH, Vaclav