#include "Matrix/MatrixSparse.hpp"
#include "Matrix/MatrixFactory.hpp"
#include "Matrix/LinkMatrixSparse.hpp"
#include "Matrix/NF_Triplet.hpp"
#include "LinearOp/Cholesky.hpp"
#include "Basic/VectorHelper.hpp"
#include "Basic/AException.hpp"
#include "Basic/Utilities.hpp"
#include "Basic/Law.hpp"
#include "Basic/WarningMacro.hpp"
#include <iostream>
#include <iomanip>
#include <Eigen/SparseCholesky>
#include <omp.h>
#include <csparse_f.h>
Functions | |
MatrixSparse * | prodNormMatMat (const MatrixSparse &a, const MatrixSparse &m, bool transpose) |
MatrixSparse * | prodNormMat (const MatrixSparse &a, const VectorDouble &vec, bool transpose) |
MatrixSparse * | prodNormDiagVec (const MatrixSparse &a, const VectorDouble &vec, int oper_choice) |
MatrixSparse * | createFromAnyMatrix (const AMatrix *matin, int opt_eigen) |
void | setUpdateNonZeroValue (int status) |
int | getUpdateNonZeroValue () |
void | setGlobalFlagEigen (bool flagEigen) |
Manage global flag for EIGEN. More... | |
bool | isGlobalFlagEigen () |
MatrixSparse* createFromAnyMatrix | ( | const AMatrix * | mat, |
int | opt_eigen = -1 |
||
) |
Transform any matrix into a Sparse format
int getUpdateNonZeroValue | ( | ) |
bool isGlobalFlagEigen | ( | ) |
MatrixSparse* prodNormDiagVec | ( | const MatrixSparse & | a, |
const VectorDouble & | vec, | ||
int | oper_choice = 1 |
||
) |
Product 'Diag(vec)' %*% 'A' %*% 'Diag(vec)'
MatrixSparse* prodNormMat | ( | const MatrixSparse & | a, |
const VectorDouble & | vec = VectorDouble() , |
||
bool | transpose = false |
||
) |
Product 't(A)' %*% ['vec'] %*% 'A' or 'A' %*% ['vec'] %*% 't(A)' stored in 'this'
MatrixSparse* prodNormMatMat | ( | const MatrixSparse & | a, |
const MatrixSparse & | m, | ||
bool | transpose = false |
||
) |
Product 't(A)' %*% 'M' %*% 'A' or 'A' %*% 'M' %*% 't(A)'
void setGlobalFlagEigen | ( | bool | flagEigen | ) |
Manage global flag for EIGEN.
Modify the parameter for using EIGEN library or not. Warning: this must be performed very early in the script in order to forbid mixing two different styles.
flagEigen | True if EIGEN library must be used; False otherwise (cs is used) |
void setUpdateNonZeroValue | ( | int | status | ) |