[Paraview] Numerical Schlieren In Paraview

Andy Bauer andy.bauer at kitware.com
Sat Feb 28 15:49:40 EST 2015


I tried this out with the Wavelet source and it's RTData as the input. You
can see what I did by loading the attached state file shlieren.pvsm). I
inlined information below on the steps. Note that you can use the Point
Data to Cell Data Filter to change to cell data output. Let me know how it
goes. If you could share a result, I'd like to see how it comes out!

On Fri, Feb 27, 2015 at 2:51 PM, Neal,Christopher R <chrisneal at ufl.edu>
wrote:

>  Hi,
>
>
>  I would like to compute a numerical schlieren field from a density field
> in Paraview.  The schlieren variable would just be the magnitude of the
> density gradient computed at each cell center in the data set.  I have been
> able to compute a basic schlieren dataset by using the Paraview filter
> "Gradient of Unstructured DataSet".  However I would like to do something
> like the following.
>
>
>  1.) Compute density gradients.
>
> 2.) Compute the magnitude of the gradients.
>

I used the Python calculator with the expression "mag(Gradients)" here. The
output array was called gradientmagnitude.

> 3.) Normalize the gradient magnitudes by the maximum value in the domain(
> so that the new variable goes from 0 to 1 )
>

I created another Python Calculator with the expression
"gradientmagnitude/max(gradientmagnitude)" and called the output array
oldSchlieren.

> 4.) Store this new data as a new variable called 'Schlieren'
>
> 5.) Take the new schlieren variable and perform a second point-by-point
> operation on the data.
>
>                 NewSchlieren = exp( -k*oldSchlieren)
>

I used the Calculator filter with the input of "exp(-.5*oldSchlieren)" and
named the output newSchlieren. I just used a value of k of 0.5.

>
>  where k is a constant that I set.  This 5th operation just serves to
> sharpen the lines that are present in the oldSchlieren data set.
>
>
>  I'm thinking that I need to write some sort of programmable filter. I'm
> just not sure how I would actually perform point-by-point operations on the
> data sets.
>
>
>  Any guidance on how to read/operate on variables in the data set would
> be greatly appreciated.
>
>
>  Thanks,
>
>
>
>
>   Christopher R. Neal
> Graduate Student
> Center for Compressible Multiphase Turbulence
>  Mechanical and Aerospace Engineering Department
>  University of Florida
> Cell: (863)-697-1958
> E-mail:  chrisneal at ufl.edu
>
> _______________________________________________
> 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
>
> Search the list archives at: http://markmail.org/search/?q=ParaView
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/paraview
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/paraview/attachments/20150228/68f30bb2/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: schlieren.pvsm
Type: application/octet-stream
Size: 202748 bytes
Desc: not available
URL: <http://public.kitware.com/pipermail/paraview/attachments/20150228/68f30bb2/attachment.obj>


More information about the ParaView mailing list