[Paraview] Fwd: Python Calculator: create a multi-component field

Christophe Bourcier christophe.bourcier.pv at gmail.com
Thu Apr 2 05:23:51 EDT 2015


Dear Paraview folks,

It seems there is a mistake in the Paraview User's Guide at the end of the
section Python Calculator.

To create a multi-component field from multiple scalar fields, hstack used
to work before Paraview 4.2.0.

But since Paraview 4.2.0, we must use numpy.column_stack. This change may
have been caused by the great work done in 4.2.0 to be able to use numpy
arrays as vtk arrays with automatic conversion from numpy to vtk and
inversely.

Using hstack will create a dataset with many components (number of nodes
times the number of field in hstack).

For instance, create a sphere source with default properties.

In Paraview 4.1.0, use this formula to create the same field as Normals:
hstack((Normals[:,0], Normals[:,1], Normals[:,2]))

In Paraview 4.2.0 and 4.3.1, if you use numpy.hstack((Normals[:,0],
Normals[:,1], Normals[:,2])), you will get a field with 150 components,
since the default sphere has 50 points. And it may lead to a memory
oversize for a source with thousands points.

In Paraview 4.2.0 and 4.3.1, the following formula gives the wanted result:
numpy.column_stack((Normals[:,0], Normals[:,1], Normals[:,2]))

Note that you must change the name of the result, otherwise the number of
components is not updated between two different formulas. This might be a
bug.

I have not found where the latex documentation is. Is it available
somewhere as a git repository? What is the policy on contributing to it?

Christophe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/paraview/attachments/20150402/4a6a60c8/attachment.html>


More information about the ParaView mailing list