[Paraview] choppy derivatives

Peter Brady petertbrady at gmail.com
Thu Apr 22 17:01:47 EDT 2010


The location we're looking at is the interface between two fluids so there
may be a discontinuity in the tangential derivatives for that reason.  I'm
trying to write my own derivative and interpolation filters in a python
programmable filter which will take  one-sided derivatives and use one-sided
interpolation.  In order to do this I need to use cell data in my filter and
not point data to avoid the interpolation that takes place.  Typically I
access point data with something like:

input = self.GetInputDataObject(0, 0)
> output = self.GetOutputDataObject(0)
>
> inputBlock = input.GetBlock(0)
> # copy old data
> output.CopyStructure(input)
> outputBlock = inputBlock.NewInstance()
> outputBlock.UnRegister(None)
> outputBlock.CopyStructure(inputBlock)
> output.SetBlock(0,outputBlock)
>
> # get number of points
> numPts = input.GetNumberOfPoints()
> # temperature gradient
> GtArr = input.GetPointData().GetVectors('ScalarGradient')
>

However, there doesn't seem to be an equivalent 'GetNumberOfCells()' or
'GetCellData()' for my multiblock data.  How can I access the cell data?

Thanks for your help,

Peter.

On Tue, Mar 30, 2010 at 10:15 AM, Berk Geveci <berk.geveci at kitware.com>wrote:

> I wonder if this is because of the multiple celldata -> point data
> conversions. Do you have an example dataset you can share?
>
> On Sun, Mar 28, 2010 at 1:45 AM, Peter Brady <petertbrady at gmail.com>
> wrote:
> > Hello list,
> >
> > I have a 3D dataset with a Temperature field.  My goal is to insert a
> sphere
> > source and determine the tangential temperature gradient on the surface
> of
> > the sphere at various zenith angles.  The data is output from the code as
> > cell data.  Here is the way I'm doing this (through pvpython)
> >
> > 1.  Apply CellDataToPointData
> > 2.  Apply ComputeDerivatives (to get the 'Scalar Gradient')
> > 3.  Apply another CellDataToPointData (to turn the derivatives into point
> > data)
> > 4.  Resample the data from step 3 with my sphere source.
> > 5.  Use a programmable filter to combine the xyz derivatives
> appropriately.
> >
> > The data is reasonable but it's fairly choppy.  When I look at dT/dx,
> dT/dy,
> > and dT/dz (before I project them onto the sphere surface), and plot them
> at
> > a particular zenith angle around the azimuth of the drop, dTdx and dTdy
> are
> > very smooth but dT/dz is fairly choppy (especially above the equator of
> the
> > drop).  If I expand my sphere to a place where there's not a lot going on
> > dT/dz seems to calm down.  Is there a way to smooth dT/dz in the location
> of
> > interest or should I try to write my own derivatives filter to make them
> > smoother?  Any thoughts?
> >
> > Thanks,
> > Peter.
> >
> > _______________________________________________
> > 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
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.paraview.org/pipermail/paraview/attachments/20100422/e58e18c9/attachment.htm>


More information about the ParaView mailing list