Here is my problem: I'm diagonalizing some matrices using
Eigensystem to obtain eigenvalues and eigenvectors and I'm diagonalizing the same matrices using a Fortran code that uses DGEEV (DGEEV computes the eigenvalues and right eigenvectors for a real nonsymmetric matrix) or DSYEV (DSYEV computes eigenvalues and eigenvectors of a real symmetric matrix) LAPACK subroutines.
These matrices are of course square but can be real nonsymmetric or symmetric matrices. The problem is that when I compare what I obtain using Mathematica and Fortran I have the same eigenvalues (that are degenerate) but not the same eigenvectors.
So I know that for degenerate eigenvalues Mathematica can give non orthogonal eigenvectors (found it here) and I tried stuffs with
Normalize but nothing conclusive yet (I'm still working in this direction).
So I was wondering if any of you know if we can use the DGEEV or DSYEV LAPACK subroutines in Mathematica ?
I have done some research and found some stuffs.
I also found here that some (or all ?) BLAS and some LAPACK functions can be used directly in Mathematica by using
followed by the name and the right arguments of the function.
I have tried some of these functions without specifying the arguments and Mathematica let me know that I don't have the right number of arguments, here an example:
LinearAlgebra`LAPACK`GETRS::argrx: LinearAlgebra`LAPACK`GETRS called with 0 arguments; 4 arguments are expected.
So I tried the same with the DGEEV function (and some other LAPACK functions like the DSYEV subroutine) and Mathematica said nothing.
I also found here something with
SystemModel by using:
But then I don't know if it's possible to use it and if yes, how to use it.