[vtkusers] How to get Eigen values and Eigen vectors ?

David Gobbi dgobbi at irus.rri.ca
Tue Aug 21 02:45:17 EDT 2001


Hi Kiran,

In the CVS version of VTK there is a function in vtkMath called
vtkSingularValueDecomposition3x3 that you can use.  I have spent
a fair bit of time testing it, and I trust it.
The vtkTransform::GetScale() method uses it.

It has a very unconventional implementation.  It actually works
by creating a special symmetric 4x4 matrix from the 3x3 matrix,
applying Jacobi to the 4x4 matrix to get a quaternion representing
the orthogonalization of the 3x3 matrix, and continues from
there.  It could otherwise be know as "how to do SVD when you
don't have a real SVD algorithm."

 - David

--
  David Gobbi, MSc                       dgobbi at irus.rri.ca
  Advanced Imaging Research Group
  Robarts Research Institute, University of Western Ontario

On Tue, 21 Aug 2001, Kiran, P (CORP, GEITC) wrote:

>
> Hi all:
>
> I want to do eigen decompostion for a matrix (of order 3x3) to extract the
> principal axes.
> I have looked at   vtkMath::Jacobi(....,....,...); But it works only for a
> symetrical matrix ( of order 3x3).
>
> Does anyone tried for eigen decomposition for a general matrix ( of order
> 3x3) ?
> Are there any available methods on vtk to do this stuff.
>
> Thanks in advance for help..
> -Kiran





More information about the vtkusers mailing list