[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