Dan

the pv-meshless plugin has a resample using a probe - as you know - but the 
resample algorithm can be SPH, or just a conventional shepard kernel. In the 
SPH manager widget, you can change it.

I tried it just now and found there was some experimental code left in which 
gave dodgy answers. I've just fixed it (and pushed to git), so now it gives a 
standard shepard interpolation for arbitrary particle data. (I'm preparing 
material for a tutorial including some particle data demos, so timing was good 
there!)

To compare with vtkShepard method - I don't know as I've never used it. But 
vtkShepardMethod only produces an imagedata as output. the stuff in pv-meshless 
allows you to probe with an arbitrary geometry and has a reasonably efficient 
particle neighbour search using a BSP tree.

Using resample to grid allows you to create a box widget of arbitrary 
resolution and resample with that. Ought to give the same output (for matching 
grid spacing etc) as vtkShepardMethod. You can sample with line/box/plane, or 
arbitrary input (any dataset).

The SPH mode of operation does the interpolation using an SPH kernel, but also 
outputs the Shepard coefficient, which should be 1 inside the volume and 0 
outside. using a contour of 0.5 allows you to generate surfaces - but it is 
dependent on the 'true' particle size (kernel size). The shepard mode only 
interpolates. However, for general scalars is v. useful. I would prefer the 
meshless plugin over the vtkShepardMethod filter for general flexibility.

JB


-----Original Message-----
From: [email protected] [mailto:[email protected]] On 
Behalf Of Dan Lussier
Sent: 14 September 2010 00:02
To: Favre Jean
Cc: [email protected]
Subject: Re: [Paraview] mapping unstructured grid onto regular grid

Ok - that's great. I was able to see how that works with some playing
around at the interactive prompt.

How does this approach using vtkShepardMethod compare to the sampling
probes that are included with the pv-meshless plugin ? I noticed that
they produce an output called Shepard, but wasn't sure how broadly
they apply outside of SPH type of work (i.e. properly defined mass,
density, etc. fields).

Thanks again.

On Sat, Sep 11, 2010 at 3:51 AM, Favre  Jean <[email protected]> wrote:
> _______________________________________
> I would like to map an unstructured grid (describing particle data
> with per particle attributes I would like interpolated onto the
> regular grid) onto a regular mesh.  I am trying to use the 'Resample
> With Dataset' filter but have not been having much luck.
> ________________________________________
>
> As far as I understand, what you are trying to do is not possible, with the 
> "Resample with dataset filter". The reason is that your input dataset does 
> not seem to have 3D cells. Resampling needs 3D cells for interpolation.
>
> There is a method, vtkShepardMethod 
> (http://www.vtk.org/doc/nightly/html/classvtkShepardMethod.html),  which does 
> exactly what you need. However, Shepard is not included in ParaView. No 
> problem, you can do it off-line:
>
> I have tried the following python script with my paraview compilation and my 
> ./bin/vtkpython and it produced the required output. See if it fits your 
> purpose.
>
> from vtk import *
> numPts = 300
>
> ps = vtk.vtkPointSource()
> ps.SetRadius(1)
> ps.SetNumberOfPoints(numPts)
> ps.Update()
>
> ca = vtk.vtkFloatArray()
> ca.SetName("datavalue")
> ca.SetNumberOfComponents(1)
> ca.SetNumberOfTuples(numPts)
>
> for i in range(0, numPts):
>  ca.SetValue(i, ps.GetOutput().GetPoint(i)[0])
>
> ps.GetOutput().GetPointData().AddArray(ca)
> ps.GetOutput().GetPointData().SetScalars(ca)
> ps.Update()
> ps.GetOutput().GetPointData().SetScalars(ca)
>
> sh = vtk.vtkShepardMethod()
> sh.SetSampleDimensions(20,20,20)
> sh.SetInputConnection(ps.GetOutputPort())
> sh.SetModelBounds(ps.GetOutput().GetBounds())
>
> wr = vtk.vtkDataSetWriter()
> wr.SetInputConnection(sh.GetOutputPort())
> wr.SetFileName("/tmp/foo.vtk")
> wr.Write()
>
> -----------------
> Jean M. Favre
> Swiss National Supercomputing Center
>
>
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the ParaView Wiki at: 
http://paraview.org/Wiki/ParaView

Follow this link to subscribe/unsubscribe:
http://www.paraview.org/mailman/listinfo/paraview
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the ParaView Wiki at: 
http://paraview.org/Wiki/ParaView

Follow this link to subscribe/unsubscribe:
http://www.paraview.org/mailman/listinfo/paraview

Reply via email to