Hello, 

As I understand, the data model in OpenDX is a field, defined
by discrete positions, regular or not.  This is analog to the 
Eulerian description of hydrodynamics.  
Now there is another popular way of representing data, particles.  
This is called the Lagrangian description in hydrodynamics.
Particles are defined by positions and carry scalar and vector 
quantitites.  The difference with an irregular sampled field
is that the particle space density does matter.  The density 
is implicitly contained in the relative positions of the 
particles.
 
For example each particle may carry a mass scalar, and a velocity
vector.  To transform a set of particles into a velocity field, 
one has to sum the mass contained in a cell, and the mass
weighted velocity (momentum).  In each cell i one wants to find
the included mass M_i and the average velocity V_i:

  M_i =  sum_j [m_j]    (then density_i = M_i / volume_i)

         1  
  V_i = ---- sum_j [m_j v_j] 
         M_j

where j are the particles within the cell i. 

Now despite hard looking in the OpenDX doc, faq, and users-list 
archive, I cannot find an obvious method to perform this 
type of averaging without resorting to inefficient approaches. 
I understand how to read particle data, how to plot the 
individual particles and their data (with AutoGlyph), how to 
make field from irregular sampling (Regrid), but how can one 
"count" or sum the particle data within individual grid cells?  

Any clue would be appreciated, thanks! 

If the particle data form has not been included in OpenDX 
original design, it seems that it would be simple to expand 
OpenDX with a few macros converting particle data to field data.

        Daniel

Reply via email to