← Back to team overview

yade-users team mailing list archive

[Question #683708]: Elastic potential energy of polyhedra

 

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

Hi,

Following the discussion in [1], the normal stiffness "kn" in the Law2_PolyhedraGeom_PolyhedraPhys_Volumetric can have different units depending on the value of "volumePower"; e.g. for the default value volumePower=1, kn is in [N/m^3].

When calculating the elastic potential energy, we currently use [2,3,4]: 
scene->energy->add(0.5*(normalForce.squaredNorm()/phys->kn+shearForce.squaredNorm()/phys->ks),
					"elastPotential",elastPotentialIx,true);
where "kn" should be in [N/m] for the units to give energy values [Joules=N*m]. 

I think the energy calculation in the normal direction should change either as 0.5*(normalForce.squaredNorm()/(phys->kn*phys->area), 
where area the projection of the overlapping volume perpendicularly to the normal direction (this would work only if volumePower=1), or more safely, use the equivalentPenetrationDepth to begin with (which works regardless of the units of kn). Btw, looking at the calculation of the equivalentPenetrationDepth [5,6], is the exact "area" calculated or is an estimation made?

Cheers,
Vasileios

[1] https://answers.launchpad.net/yade/+question/681383
[2] https://gitlab.com/yade-dev/trunk/blob/master/pkg/dem/Polyhedra.cpp#L517
[3] https://gitlab.com/yade-dev/trunk/blob/master/pkg/dem/Polyhedra.cpp#L584
[4] https://gitlab.com/yade-dev/trunk/blob/master/pkg/dem/Polyhedra.cpp#L589
[5] https://gitlab.com/yade-dev/trunk/blob/master/pkg/dem/Polyhedra_Ig2.cpp#L121
[6] https://gitlab.com/yade-dev/trunk/blob/master/pkg/dem/Polyhedra_Ig2.cpp#L219

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.