Robotran C Documentation
Classes | Macros | Functions
schur_lapack.c File Reference
#include <stdio.h>
#include <math.h>
#include <limits.h>
#include "mbs_message.h"
#include "mbs_errors_names.h"
#include "useful_functions.h"
#include "lapacke.h"

Classes

struct  complex_float
 Implementation of eig function using lapacke without using the lapackE interface. More...
 
struct  complex_double
 

Macros

#define lapack_complex_float   struct complex_float
 
#define lapack_complex_double   struct complex_double
 

Functions

int mbs_select (const double *real, const double *imaginary)
 
int mbs_schur_0 (double **A, int n, double **T, double **Z, double *WR, double *WI, int reorder)
 A : matrix for the Eigenvalue problem in row major n : size of the matrix WR : Result of the Eigenvalue problem: real part of the n eigen values (ordered as they appear on the diagonal of the output Schur form T [n x 1] WI : Result of the Eigenvalue problem: real part of the n eigen values (ordered as they appear on the diagonal of the output Schur form T [n x 1] T : (Re-ordered) schur decomposition matrix Z : (Re-ordered) orthogonal matrix Z of Schur vectors [n X n] reorder : flag for re-ordering 1=re-ordered 0=non-ordered (default 1) More...
 

Macro Definition Documentation

◆ lapack_complex_double

#define lapack_complex_double   struct complex_double

◆ lapack_complex_float

#define lapack_complex_float   struct complex_float

Function Documentation

◆ mbs_schur_0()

int mbs_schur_0 ( double **  A,
int  n,
double **  T,
double **  Z,
double *  WR,
double *  WI,
int  reorder 
)

A : matrix for the Eigenvalue problem in row major n : size of the matrix WR : Result of the Eigenvalue problem: real part of the n eigen values (ordered as they appear on the diagonal of the output Schur form T [n x 1] WI : Result of the Eigenvalue problem: real part of the n eigen values (ordered as they appear on the diagonal of the output Schur form T [n x 1] T : (Re-ordered) schur decomposition matrix Z : (Re-ordered) orthogonal matrix Z of Schur vectors [n X n] reorder : flag for re-ordering 1=re-ordered 0=non-ordered (default 1)

Returns
0 for successful exit.

◆ mbs_select()

int mbs_select ( const double *  real,
const double *  imaginary 
)