#include "boost/version.hpp"
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/stringize.hpp>
#include "boost/numeric/bindings/traits/ublas_matrix.hpp"
#include "boost/numeric/bindings/traits/std_vector.hpp"
#include "boost/numeric/ublas/matrix_proxy.hpp"
#include "boost/numeric/ublas/matrix.hpp"
#include "boost/numeric/ublas/io.hpp"
#include "boost/numeric/ublas/operation.hpp"
#include "boost/numeric/ublas/vector.hpp"
#include "boost/numeric/ublas/vector_proxy.hpp"
#include "boost/numeric/ublas/triangular.hpp"
#include "boost/numeric/ublas/lu.hpp"
#include "boost/numeric/bindings/lapack/gesvd.hpp"
|
#define | MRAWDATA(x) |
|
#define | VRAWDATA(x) |
|
#define | MAL_VECTOR_TYPE(type) |
|
#define | MAL_VECTOR(name, type) |
|
#define | MAL_VECTOR_DIM(name, type, nb_rows) |
|
#define | MAL_VECTOR_SIZE(name) |
|
#define | MAL_VECTOR_RESIZE(name, nb_rows) |
|
#define | MAL_VECTOR_FILL(name, value) |
|
#define | MAL_VECTOR_NORM(name) |
|
#define | MAL_VECTOR_3D_CROSS_PRODUCT(res, v1, v2) |
|
#define | MAL_RET_VECTOR_DATABLOCK(name) |
|
#define | MAL_MATRIX_TYPE(type) |
|
#define | MAL_MATRIX(name, type) |
|
#define | MAL_MATRIX_(type) |
|
#define | MAL_MATRIX_DIM(name, type, nb_rows, nb_cols) |
|
#define | MAL_MATRIX_RESIZE(name, nb_rows, nb_cols) |
|
#define | MAL_MATRIX_NB_ROWS(name) |
|
#define | MAL_MATRIX_NB_COLS(name) |
|
#define | MAL_MATRIX_CLEAR(name) |
|
#define | MAL_INVERSE(name, inv_matrix, type) |
|
#define | MAL_PSEUDOINVERSE(matrix, pinv_matrix, type) |
|
#define | MAL_RET_TRANSPOSE(matrix) |
|
#define | MAL_TRANSPOSE_A_in_At(A, At) |
|
#define | MAL_RET_TRANSPOSE_IN_PLACE(matrix) |
|
#define | MAL_RET_A_by_B(A, B) |
|
#define | MAL_C_eq_A_by_B(C, A, B) |
|
#define | MAL_MATRIX_SET_IDENTITY(matrix) |
|
#define | MAL_MATRIX_FILL(matrix, value) |
|
#define | MAL_RET_MATRIX_DATABLOCK(matrix) |
|
#define | MAL_MATRIX_C_eq_EXTRACT_A(C, A, type, top, left, nbrows, nbcols) |
|
#define | MAL_MATRIX_RET_DETERMINANT(name, type) |
|
#define | _MAL_VERSION_ 1 |
|
|
typedef boost_ublas::vector< double > | vectorN |
|
typedef boost_ublas::matrix< double > | matrixNxP |
|
|
void | dgesvd_ (char const *jobu, char const *jobvt, int const *m, int const *n, double *a, int const *lda, double *s, double *u, int const *ldu, double *vt, int const *ldvt, double *work, int const *lwork, int *info) |
|
template<class type> |
double | __ret_mal_matrix_ret_determinant (boost_ublas::matrix< type > const &m) |
|
◆ _MAL_VERSION_
◆ MAL_C_eq_A_by_B
#define MAL_C_eq_A_by_B |
( |
| C, |
|
|
| A, |
|
|
| B ) |
◆ MAL_INVERSE
#define MAL_INVERSE |
( |
| name, |
|
|
| inv_matrix, |
|
|
| type ) |
◆ MAL_MATRIX
#define MAL_MATRIX |
( |
| name, |
|
|
| type ) |
Value: boost_ublas::matrix<type> name
◆ MAL_MATRIX_
#define MAL_MATRIX_ |
( |
| type | ) |
|
Value:boost_ublas::matrix<type>
◆ MAL_MATRIX_C_eq_EXTRACT_A
#define MAL_MATRIX_C_eq_EXTRACT_A |
( |
| C, |
|
|
| A, |
|
|
| type, |
|
|
| top, |
|
|
| left, |
|
|
| nbrows, |
|
|
| nbcols ) |
Value: { \
boost_ublas::matrix_slice< boost_ublas::matrix<type> > amatrix(A,boost_ublas::slice(top,1,nbrows),boost_ublas::slice(left,1,nbcols)); \
C = amatrix;\
}
◆ MAL_MATRIX_CLEAR
#define MAL_MATRIX_CLEAR |
( |
| name | ) |
|
◆ MAL_MATRIX_DIM
#define MAL_MATRIX_DIM |
( |
| name, |
|
|
| type, |
|
|
| nb_rows, |
|
|
| nb_cols ) |
Value: boost_ublas::matrix<type> name(nb_rows,nb_cols)
◆ MAL_MATRIX_FILL
#define MAL_MATRIX_FILL |
( |
| matrix, |
|
|
| value ) |
Value: {\
for(unsigned int i=0;i<matrix.size1();i++) \
for(unsigned int j=0;j<matrix.size2();j++)\
matrix(i,j) = value;\
}
◆ MAL_MATRIX_NB_COLS
#define MAL_MATRIX_NB_COLS |
( |
| name | ) |
|
◆ MAL_MATRIX_NB_ROWS
#define MAL_MATRIX_NB_ROWS |
( |
| name | ) |
|
◆ MAL_MATRIX_RESIZE
#define MAL_MATRIX_RESIZE |
( |
| name, |
|
|
| nb_rows, |
|
|
| nb_cols ) |
Value: name.resize(nb_rows,nb_cols)
◆ MAL_MATRIX_RET_DETERMINANT
#define MAL_MATRIX_RET_DETERMINANT |
( |
| name, |
|
|
| type ) |
Value:
double __ret_mal_matrix_ret_determinant(boost_ublas::matrix< type > const &m)
Definition matrixabstractlayerboost.hh:244
◆ MAL_MATRIX_SET_IDENTITY
#define MAL_MATRIX_SET_IDENTITY |
( |
| matrix | ) |
|
Value: { \
for(unsigned int i=0;i<matrix.size1();i++) \
for(unsigned int j=0;j<matrix.size2();j++)\
if (i==j) \
matrix(i,j) = 1; \
else \
matrix(i,j) = 0;\
}
◆ MAL_MATRIX_TYPE
#define MAL_MATRIX_TYPE |
( |
| type | ) |
|
Value: boost_ublas::matrix<type>
◆ MAL_PSEUDOINVERSE
#define MAL_PSEUDOINVERSE |
( |
| matrix, |
|
|
| pinv_matrix, |
|
|
| type ) |
◆ MAL_RET_A_by_B
#define MAL_RET_A_by_B |
( |
| A, |
|
|
| B ) |
◆ MAL_RET_MATRIX_DATABLOCK
#define MAL_RET_MATRIX_DATABLOCK |
( |
| matrix | ) |
|
Value:
#define MRAWDATA(x)
Definition boostmacros.hh:59
◆ MAL_RET_TRANSPOSE
#define MAL_RET_TRANSPOSE |
( |
| matrix | ) |
|
◆ MAL_RET_TRANSPOSE_IN_PLACE
#define MAL_RET_TRANSPOSE_IN_PLACE |
( |
| matrix | ) |
|
◆ MAL_RET_VECTOR_DATABLOCK
#define MAL_RET_VECTOR_DATABLOCK |
( |
| name | ) |
|
Value:
#define VRAWDATA(x)
Definition boostmacros.hh:60
◆ MAL_TRANSPOSE_A_in_At
#define MAL_TRANSPOSE_A_in_At |
( |
| A, |
|
|
| At ) |
◆ MAL_VECTOR
#define MAL_VECTOR |
( |
| name, |
|
|
| type ) |
Value: boost_ublas::vector<type> name
◆ MAL_VECTOR_3D_CROSS_PRODUCT
#define MAL_VECTOR_3D_CROSS_PRODUCT |
( |
| res, |
|
|
| v1, |
|
|
| v2 ) |
Value: if ((v1.size()==3) && (v2.size()==3)) \
{ \
res[0] = v1[1] * v2[2] - v2[1] * v1[2]; \
res[1] = v1[2] * v2[0] - v2[2] * v1[0]; \
res[2] = v1[0] * v2[1] - v2[0] * v1[1]; \
}
◆ MAL_VECTOR_DIM
#define MAL_VECTOR_DIM |
( |
| name, |
|
|
| type, |
|
|
| nb_rows ) |
Value: boost_ublas::vector<type> name(nb_rows)
◆ MAL_VECTOR_FILL
#define MAL_VECTOR_FILL |
( |
| name, |
|
|
| value ) |
Value: { for(unsigned int i=0;i<name.size();name[i++]=value) ;}
◆ MAL_VECTOR_NORM
#define MAL_VECTOR_NORM |
( |
| name | ) |
|
Value: boost_ublas::norm_2(name)
◆ MAL_VECTOR_RESIZE
#define MAL_VECTOR_RESIZE |
( |
| name, |
|
|
| nb_rows ) |
◆ MAL_VECTOR_SIZE
#define MAL_VECTOR_SIZE |
( |
| name | ) |
|
◆ MAL_VECTOR_TYPE
#define MAL_VECTOR_TYPE |
( |
| type | ) |
|
Value: boost_ublas::vector<type>
◆ MRAWDATA
Value:traits::matrix_storage(x)
◆ VRAWDATA
Value:traits::vector_storage(x)
◆ matrixNxP
typedef boost_ublas::matrix<double> matrixNxP |
◆ vectorN
typedef boost_ublas::vector<double> vectorN |
◆ __ret_mal_matrix_ret_determinant()
template<class type>
double __ret_mal_matrix_ret_determinant |
( |
boost_ublas::matrix< type > const & | m | ) |
|
|
inline |
◆ dgesvd_()
void dgesvd_ |
( |
char const * | jobu, |
|
|
char const * | jobvt, |
|
|
int const * | m, |
|
|
int const * | n, |
|
|
double * | a, |
|
|
int const * | lda, |
|
|
double * | s, |
|
|
double * | u, |
|
|
int const * | ldu, |
|
|
double * | vt, |
|
|
int const * | ldvt, |
|
|
double * | work, |
|
|
int const * | lwork, |
|
|
int * | info ) |