yade-users team mailing list archive
-
yade-users team
-
Mailing list archive
-
Message #26820
Re: [Question #699937]: Change 3D inertia to 2D/1D inertia
Question #699937 on Yade changed:
https://answers.launchpad.net/yade/+question/699937
Description changed to:
Hi,
I am working simulating the radius increase of particles over time, I
want to change inertia from 3D to 1D. So the particle only moves in
z-direction. The reason is to increase the timestep, currently the time
step is 2e-8. The particle size are 8e-5 m.
I came across this example from Yade tutorials (buoyancy.py) for LBM. In
this example they change 3D inertia to 2D inertia by using following
code:
for s in O.bodies:
if isinstance(s.shape,Box): continue
r=s.shape.radius
oldm=s.state.mass
oldI=s.state.inertia
m=oldm*3./4./r
s.state.mass=m
s.state.inertia[0] = 15./16./r*oldI[0] #inertia with respect to x and y axes are not used and the computation here is wrong
s.state.inertia[1] = 15./16./r*oldI[1] #inertia with respect to x and y axes are not used and the computation here is wrong
s.state.inertia[2] = 15./16./r*oldI[2] #only inertia with respect to z axis is usefull
I thought of maybe using this code to change 3D inertia to 1D inertia. I was wondering what are principal behind the change and which equation was used in the example?
Is there a better way to change 3D inertia and 1D inertia?
Best regards,
Mithushan
--
You received this question notification because your team yade-users is
an answer contact for Yade.