← Back to team overview

yade-users team mailing list archive

[Question #699937]: Change 3D inertia to 2D/1D inertia

 

New question #699937 on Yade:
https://answers.launchpad.net/yade/+question/699937

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 come across this example from Yade (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 though of maybe use this code to change 3Inertia to 1D inertia. I was wondering what are principal behind the conversion and which equation was used?
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.