Thanks Vaclav:

I am now trying to implement this algorithm, however still thinking if there is 
better way to do that: 
(1) For tetrahedral elements, I wonder it might be good to use the polygon 
boolean operations (there are some example cases in CGAL, 3D boolean 
operations, Nef_3), but for spheres I don't have any idea
(2) I wonder if opengl has any embedded methods, since it supports selection 
the object...
(3) More complicated algorithms like ray tracing, etc, but those algorithms are 
beyond my area of knowledge.
The reason I think of those methods, is the sampling method (grid method) is 
still an approximate method, while polygon boolean operation is an accurate 
method..., I might be too critical at this:)

Feng

-----Original Message-----
From: [EMAIL PROTECTED] on behalf of Václav Smilauer
Sent: Fri 11/16/2007 8:29 AM
To: [email protected]
Subject: Re: [Yade-users] Any idea to calculate the total nooverlapping volume 
of the particle assembly?
 
I'd sample the whole space (dimensions x,y,z), then calculate
occupied_volume=(#hits/#samples)*sample_volume=(#hits/(x/dx*y/dy*z/dz))*x*y*z. 
I did this for tetrahedra once, it worked pretty well. It will be probably 
quite slow if you do it at every timestep, but will work in all cases.

Less generally, you would consider that there is no situation that 3
bodies occupy one point (can be quite reasonable an assumption). The
you'd sum all particle's volumes (constant) and then for each
interaction, subtract once the volume (some geometry) that is doubled by
the overlap. But it will work on unbounded space only, i.e. you'll get
V_the_whole_spherical_arrangement, not V[red]. 

Vaclav
_______________________________________________
Yade-users mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/yade-users

Reply via email to