[Paraview] Stream Tracer in eigenvector field

Andy Bauer andy.bauer at kitware.com
Fri Aug 23 16:31:48 EDT 2013


Oh boy, the math does slip away too fast :)


On Fri, Aug 23, 2013 at 4:31 PM, Burlen Loring <bloring at lbl.gov> wrote:

>  Eigenvectors are unique up to a constant so if you took any eigenvector
> and multiplied it by -1 it's still an eigenvector. You could see it in the
> definition,
>
> M x=\lambda x
>
> eigenvector x appears in both sides of the eqn.
>
> I had a similar problem with tensor glyphs in ParaView. In that case I was
> able to solve by looking at the sign of the determinant of the
> transformation matrix (see bug report, patch and mail list posts below). I
> wonder if you could adapt/build on this solution there to solve your issue
> here?
>
> http://vtk.org/Bug/view.php?id=12179
>
> http://vtk.1045678.n5.nabble.com/tensor-glyph-inward-pointing-surface-normals-td4388361.html
>
> Burlen
>
>
> On 08/23/2013 01:10 PM, Andy Bauer wrote:
>
>   Hi Paul,
>
>  Apologies as my math is a bit rusty but isn't the sign of the eigenvector
> related to the sign of its corresponding eigenvalue? In that case if you
> make sure that all of the eigenvalues are positive then all of their
> corresponding eigenvectors should be aligned properly. If that's the case
> and you have access to the eigenvalues of the eigenvectors you could use
> the calculator or python calculator to properly orient the eigenvectors.
>
>  In any case, if you can come up with an algorithm that properly orients
> the eigenvectors you should be able to do that in the python calculator or
> calculator filters. If not, then things could get a bit hairy as far as
> computationally figuring out which is the "proper" direction your
> eigenvalues should have.
>
>  Regards,
> Andy
>
>
> On Fri, Aug 23, 2013 at 3:38 PM, pwhiteho <pwhiteho at masonlive.gmu.edu>wrote:
>
>>  The term "eigenvector", used to describe the principal directions of a
>> tensor, is a bit of a misnomer since it's not a "vector" as interpreted by
>> the Stream Tracer filter - it's more accurately bi-directional like
>> tension/compression and could be termed "eigenaxis/eigenaxes". When
>> interpreted as a vector, there is an inherent sign ambiguity in each
>> eigenvector - the sign is indeterminate and one is free to choose + or -,
>> and that is exactly what Mathematica does ( likely true for other routines
>> also ).
>>
>> I've been using Mathematica to prototype computations for the
>> investigation of tensor topology which I then visualize in ParaView.
>> Eigen-decomposition of a tensor field at each grid point returns an
>> orthonormal set of eigenvectors, uncorrelated with any neighbors. Taken
>> separately, each eigenvector field exhibits large regions of smoothly
>> varying orientation, but there are systematic and random reversals of
>> orientation that confound the Stream Tracer filter, sending streamlines
>> wandering around the field. What is needed is a true tangent curve ( tensor
>> line ) integrator that would avoid "doubling back" as the "streamline"
>> propagates, similar to the scheme of Weinstein, et. al., ( IEEE VIS'99 )
>> which computes the dot product of the incoming propagation vector with the
>> eigenvector; and if near -1, negate the outgoing propagation vector. This
>> can also be fancied-up to accommodate noisy initial tensor data as in
>> Weinstein.
>>
>> I think I would be taking on too much at this point in learning to write
>> my own filter so have been exploring ways to pre-process the eigenvector
>> fields before visualizing in Paraview, but I ask:
>> 1. Have I missed something in existing filters that would handle this?
>> 2. Can the existing Stream Tracer be modified?
>> 3. Does the eigenvector routine in ParaView yield the same sign ambiguity
>> among uncorrelated computations?
>>
>> Thanks,
>> Paul W
>>
>>
>> _______________________________________________
>> 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
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.paraview.org/pipermail/paraview/attachments/20130823/f25c639f/attachment.htm>


More information about the ParaView mailing list