Linear Algebra Tools¶
-
void Muscat::GetInv_Jacobian_Det(MapMatrixDDD &valdphidxi, const Eigen::Ref<const MatrixDDD> &xcoor, int &Dimensionality, MatrixDDD &Jacobian, double &Jdet, Eigen::ColPivHouseholderQR<MatrixDDD> &Jinv)¶
-
void Muscat::GetNormal(const int &SpaceDim, const int &elementDim, MatrixDDD &Jacobian, MatrixD31 &Normal)¶
-
struct EigenSolvers¶
Public Types
-
typedef Eigen::ConjugateGradient<SpMatD, Upper | Lower> EigenSpCG¶
-
typedef Eigen::SparseLU<SpMatD> EigenSpLU¶
-
typedef Eigen::SparseQR<SpMatD, Eigen::COLAMDOrdering<int>> EigenSpQR¶
-
typedef Eigen::BiCGSTAB<SpMatDR> EigenSpBiCGSTAB¶
Public Functions
-
inline EigenSolvers()¶
-
inline void Clean()¶
-
inline void ForceNumberOfThreads(int n)¶
-
inline void SetSolverType(int i)¶
-
inline void SetOp(const CMuscatIndex &sizem, const CMuscatIndex &sizen, const CMuscatIndex &ev_size, CMuscatFloat *ev, CMuscatIndex *ei, CMuscatIndex *ej, const double &tolerance)¶
-
inline void Solve(CMuscatIndex size, CMuscatFloat *_rhs, CMuscatFloat *_sol)¶
-
inline CMuscatIndex GetSPQRRank()¶
-
inline CMuscatIndex GetSPQR_R_nonZeros()¶
-
inline void GetSPQR_R(CMuscatIndex *sizei, CMuscatIndex *sizej, CMuscatFloat *ev, CMuscatIndex *ei, CMuscatIndex *ej)¶
-
inline void GetSPQR_P(CMuscatIndex *p)¶
-
inline CMuscatIndex GetSPQR_Q_nonZeros()¶
-
inline void GetSPQR_Q(CMuscatIndex *sizei, CMuscatIndex *sizej, CMuscatFloat *ev, CMuscatIndex *ei, CMuscatIndex *ej)¶
-
typedef Eigen::ConjugateGradient<SpMatD, Upper | Lower> EigenSpCG¶
Numpy like operators¶
-
MatrixID1 Muscat::NonZero(const MatrixBD1 &input)¶