mmg3d
|
Find eigenvalues and eigenvectors of matrix. More...
Macros | |
#define | _MG_EPSD 1.e-13 |
#define | _MG_EPSD2 1.e-10 |
#define | _MG_EPS6 5.e-06 |
#define | _MG_EPS 1.e-06 |
#define | _MG_EPSX2 2.e-06 |
#define | MAXTOU 50 |
#define | egal(x, y) |
Functions | |
static int | newton3 (double p[4], double x[3]) |
Find root(s) of a polynomial of degree 3. More... | |
int | _MMG5_eigenv (int symmat, double *mat, double lambda[3], double v[3][3]) |
Find eigenvalues and vectors of a 3x3 matrix. More... | |
int | _MMG5_eigen2 (double *mm, double *lambda, double vp[2][2]) |
Find eigenvalues and vectors of a 2x2 matrix. More... | |
int | _MMG5_eigensym (double m[3], double lambda[2], double vp[2][2]) |
Variables | |
static double | Id [3][3] |
Identity matrix. More... | |
Find eigenvalues and eigenvectors of matrix.
Find eigenvalues and eigenvectors of 2x2 or 3x3 symetric definite positive matrix.
#define _MG_EPS 1.e-06 |
#define _MG_EPS6 5.e-06 |
#define _MG_EPSD 1.e-13 |
#define _MG_EPSD2 1.e-10 |
#define _MG_EPSX2 2.e-06 |
#define egal | ( | x, | |
y | |||
) |
#define MAXTOU 50 |
int _MMG5_eigen2 | ( | double * | mm, |
double * | lambda, | ||
double | vp[2][2] | ||
) |
Find eigenvalues and vectors of a 2x2 matrix.
mm | pointer toward the matrix. |
lambda | pointer toward the output eigenvalues. |
vp | eigenvectors. |
|
inline |
m | terms of symetric matrix ![]() |
lambda | eigenvalues of m. |
vp | eigenvectors of m. |
Compute eigenelements of a symetric matrix m. Eigenvectors are orthogonal.
int _MMG5_eigenv | ( | int | symmat, |
double * | mat, | ||
double | lambda[3], | ||
double | v[3][3] | ||
) |
Find eigenvalues and vectors of a 3x3 matrix.
symmat | 0 if matrix is not symetric, 1 otherwise. |
mat | pointer toward the matrix. |
lambda | eigenvalues. |
v | eigenvectors. |
|
static |
Find root(s) of a polynomial of degree 3.
p | polynomial coefficients (b=p[2], c=p[1], d=p[0]). |
x | root(s) of polynomial. |
Find root(s) of a polynomial of degree 3: .
|
static |
Identity matrix.