Seldon Namespace Reference

Seldon namespace. More...

Classes

class  Array3D
 3D array. More...
class  MatrixCholmod
 Object containing Cholesky factorization. More...
class  TypeMumps
class  TypeMumps< double >
 class containing MUMPS data structure More...
class  TypeMumps< complex< double > >
 class containing MUMPS data structure More...
class  MatrixMumps
 object used to solve linear system by calling mumps subroutines More...
class  MatrixPastix
class  MatrixSuperLU_Base
 class interfacing SuperLU functions More...
class  MatrixSuperLU
 empty matrix More...
class  MatrixSuperLU< double >
 class interfacing SuperLU functions in double precision More...
class  MatrixSuperLU< complex< double > >
 class interfacing SuperLU functions in complex double precision More...
class  MatrixUmfPack_Base
 < base class to solve linear system by using UmfPack More...
class  MatrixUmfPack
 empty class More...
class  MatrixUmfPack< double >
 class to solve linear system in double precision with UmfPack More...
class  MatrixUmfPack< complex< double > >
 class to solve linear system in complex double precision with UmfPack More...
class  Preconditioner_Base
 Base class for preconditioners. More...
class  Iteration
 Class containing parameters for an iterative resolution. More...
class  IlutPreconditioning
class  SorPreconditioner
class  HeterogeneousMatrixCollection
 Matrix class made of an heterogeneous collection of matrices. More...
class  Matrix< FloatDouble, General, DenseSparseCollection, Allocator< double > >
 Heterogeneous matrix collection class. More...
class  Matrix_Base
 Base class for all matrices. More...
class  Matrix_Hermitian
 Hermitian matrix stored in a full matrix. More...
class  Matrix< T, Prop, ColHerm, Allocator >
 Column-major hermitian full-matrix class. More...
class  Matrix< T, Prop, RowHerm, Allocator >
 Row-major hermitian full-matrix class. More...
class  Matrix_HermPacked
 Hermitian packed matrix class. More...
class  Matrix< T, Prop, ColHermPacked, Allocator >
 Column-major hermitian packed matrix class. More...
class  Matrix< T, Prop, RowHermPacked, Allocator >
 Row-major hermitian packed matrix class. More...
class  Matrix_Pointers
 Full matrix class. More...
class  Matrix< T, Prop, ColMajor, Allocator >
 Column-major full-matrix class. More...
class  Matrix< T, Prop, RowMajor, Allocator >
 Row-major full-matrix class. More...
class  Matrix_Symmetric
 Symmetric matrix stored in a full matrix. More...
class  Matrix< T, Prop, ColSym, Allocator >
 Column-major symmetric full-matrix class. More...
class  Matrix< T, Prop, RowSym, Allocator >
 Row-major symmetric full-matrix class. More...
class  Matrix_SymPacked
 Symmetric packed matrix class. More...
class  Matrix< T, Prop, ColSymPacked, Allocator >
 Column-major symmetric packed matrix class. More...
class  Matrix< T, Prop, RowSymPacked, Allocator >
 Row-major symmetric packed matrix class. More...
class  Matrix_TriangPacked
 Triangular packed matrix class. More...
class  Matrix< T, Prop, ColUpTriangPacked, Allocator >
 Column-major upper-triangular packed matrix class. More...
class  Matrix< T, Prop, ColLoTriangPacked, Allocator >
 Column-major lower-triangular packed matrix class. More...
class  Matrix< T, Prop, RowUpTriangPacked, Allocator >
 Row-major upper-triangular packed matrix class. More...
class  Matrix< T, Prop, RowLoTriangPacked, Allocator >
 Row-major lower-triangular packed matrix class. More...
class  Matrix_Triangular
 Triangular matrix stored in a full matrix. More...
class  Matrix< T, Prop, ColUpTriang, Allocator >
 Column-major upper-triangular full-matrix class. More...
class  Matrix< T, Prop, ColLoTriang, Allocator >
 Column-major lower-triangular full-matrix class. More...
class  Matrix< T, Prop, RowUpTriang, Allocator >
 Row-major upper-triangular full-matrix class. More...
class  Matrix< T, Prop, RowLoTriang, Allocator >
 Row-major lower-triangular full-matrix class. More...
class  MatrixCollection
 Matrix class made of a collection of matrices. More...
class  Matrix< T, Prop, ColMajorCollection, Allocator >
 Column-major matrix collection class. More...
class  Matrix< T, Prop, RowMajorCollection, Allocator >
 Row-major matrix collection class. More...
class  Matrix< T, Prop, ColSymPackedCollection, Allocator >
 Symetric column-major matrix collection class. More...
class  Matrix< T, Prop, RowSymPackedCollection, Allocator >
 Symetric row-major matrix collection class. More...
class  Matrix< T, Prop, SubStorage< M >, Allocator >
 Sub-matrix class. More...
class  SubMatrix
 Sub-matrix class. More...
class  SubMatrix_Base
 Sub-matrix base class. More...
class  Matrix_ArrayComplexSparse
 Sparse Array-matrix class. More...
class  Matrix< T, Prop, ArrayColComplexSparse, Allocator >
 Column-major sparse-matrix class. More...
class  Matrix< T, Prop, ArrayRowComplexSparse, Allocator >
 Row-major sparse-matrix class. More...
class  Matrix< T, Prop, ArrayColSymComplexSparse, Allocator >
 Column-major symmetric sparse-matrix class. More...
class  Matrix< T, Prop, ArrayRowSymComplexSparse, Allocator >
 Row-major symmetric sparse-matrix class. More...
class  Matrix_ArraySparse
 Sparse Array-matrix class. More...
class  Matrix< T, Prop, ArrayColSparse, Allocator >
 Column-major sparse-matrix class. More...
class  Matrix< T, Prop, ArrayRowSparse, Allocator >
 Row-major sparse-matrix class. More...
class  Matrix< T, Prop, ArrayColSymSparse, Allocator >
 Column-major symmetric sparse-matrix class. More...
class  Matrix< T, Prop, ArrayRowSymSparse, Allocator >
 Row-major symmetric sparse-matrix class. More...
class  Matrix_ComplexSparse
 Complex sparse-matrix class. More...
class  Matrix< T, Prop, ColComplexSparse, Allocator >
 Column-major sparse-matrix class. More...
class  Matrix< T, Prop, RowComplexSparse, Allocator >
 Row-major sparse-matrix class. More...
class  Matrix_Sparse
 Sparse-matrix class. More...
class  Matrix< T, Prop, ColSparse, Allocator >
 Column-major sparse-matrix class. More...
class  Matrix< T, Prop, RowSparse, Allocator >
 Row-major sparse-matrix class. More...
class  Matrix_SymComplexSparse
 Symmetric complex sparse-matrix class. More...
class  Matrix< T, Prop, ColSymComplexSparse, Allocator >
 Column-major complex sparse-matrix class. More...
class  Matrix< T, Prop, RowSymComplexSparse, Allocator >
 Row-major complex sparse-matrix class. More...
class  Matrix_SymSparse
 Symmetric sparse-matrix class. More...
class  Matrix< T, Prop, ColSymSparse, Allocator >
 Column-major sparse-matrix class. More...
class  Matrix< T, Prop, RowSymSparse, Allocator >
 Row-major sparse-matrix class. More...
class  Vector
class  Matrix
class  MallocAlloc
class  CallocAlloc
class  NewAlloc
class  MallocObject
class  NaNAlloc
class  Error
class  Undefined
class  WrongArgument
class  NoMemory
class  WrongDim
class  WrongIndex
class  WrongRow
class  WrongCol
class  IOError
class  LapackError
class  LapackInfo
class  SeldonTranspose
class  class_SeldonTrans
class  class_SeldonNoTrans
class  class_SeldonConjTrans
class  SeldonDiag
class  class_SeldonNonUnit
class  class_SeldonUnit
class  SeldonUplo
class  SeldonNorm
class  SeldonConjugate
class  SeldonSide
class  class_SeldonLeft
class  class_SeldonRight
class  General
class  Symmetric
class  VectFull
class  VectSparse
class  Collection
class  DenseSparseCollection
class  ColMajor
class  RowMajor
class  ColSparse
class  RowSparse
class  ColComplexSparse
class  RowComplexSparse
class  ColSymSparse
class  RowSymSparse
class  ColSymComplexSparse
class  RowSymComplexSparse
class  ArrayRowSparse
class  ArrayColSparse
class  ArrayRowSymSparse
class  ArrayColSymSparse
class  ArrayRowComplexSparse
class  ArrayRowSymComplexSparse
class  ArrayColComplexSparse
class  ArrayColSymComplexSparse
class  ColSymPacked
class  RowSymPacked
class  ColSym
class  RowSym
class  ColHerm
class  RowHerm
class  ColHermPacked
class  RowHermPacked
class  ColUpTriang
class  ColLoTriang
class  RowUpTriang
class  RowLoTriang
class  ColUpTriangPacked
class  ColLoTriangPacked
class  RowUpTriangPacked
class  RowLoTriangPacked
class  SubStorage
class  FloatDouble
class  ColMajorCollection
class  RowMajorCollection
class  ColSymPackedCollection
class  RowSymPackedCollection
class  ColUpTriangPackedCollection
class  RowUpTriangPackedCollection
class  Vector< FloatDouble, DenseSparseCollection, Allocator< T > >
 Structure for distributed vectors. More...
class  Vector< T, VectSparse, Allocator >
 Sparse vector class. More...
class  Vector_Base
 Base structure for all vectors. More...
class  Vector< T, VectFull, Allocator >
 Full vector class. More...
class  Vector2
 Vector of vectors. More...
class  Vector3
 Vector of vectors of vectors. More...
class  Vector< T, Collection, Allocator >
 Structure for distributed vectors. More...

Typedefs

typedef Vector< int, VectFull,
SELDON_DEFAULT_ALLOCATOR< int > > 
IVect
typedef Vector< float,
VectFull,
SELDON_DEFAULT_ALLOCATOR
< float > > 
SVect
typedef Vector< double,
VectFull,
SELDON_DEFAULT_ALLOCATOR
< double > > 
DVect
typedef Vector< complex< float >
, VectFull,
SELDON_DEFAULT_ALLOCATOR
< complex< float > > > 
CVect
typedef Vector< complex
< double >, VectFull,
SELDON_DEFAULT_ALLOCATOR
< complex< double > > > 
ZVect
typedef Matrix< int, General,
ColMajor,
SELDON_DEFAULT_ALLOCATOR< int > > 
IGCMat
typedef Matrix< float, General,
ColMajor,
SELDON_DEFAULT_ALLOCATOR
< float > > 
SGCMat
typedef Matrix< double,
General, ColMajor,
SELDON_DEFAULT_ALLOCATOR
< double > > 
DGCMat
typedef Matrix< complex< float >
, General, ColMajor,
SELDON_DEFAULT_ALLOCATOR
< complex< float > > > 
CGCMat
typedef Matrix< complex
< double >, General, ColMajor,
SELDON_DEFAULT_ALLOCATOR
< complex< double > > > 
ZGCMat
typedef Matrix< int, General,
RowMajor,
SELDON_DEFAULT_ALLOCATOR< int > > 
IGRMat
typedef Matrix< float, General,
RowMajor,
SELDON_DEFAULT_ALLOCATOR
< float > > 
SGRMat
typedef Matrix< double,
General, RowMajor,
SELDON_DEFAULT_ALLOCATOR
< double > > 
DGRMat
typedef Matrix< complex< float >
, General, RowMajor,
SELDON_DEFAULT_ALLOCATOR
< complex< float > > > 
CGRMat
typedef Matrix< complex
< double >, General, RowMajor,
SELDON_DEFAULT_ALLOCATOR
< complex< double > > > 
ZGRMat
typedef Matrix< int, General,
RowSparse,
SELDON_DEFAULT_ALLOCATOR< int > > 
IGRSMat
typedef Matrix< float, General,
RowSparse,
SELDON_DEFAULT_ALLOCATOR
< float > > 
SGRSMat
typedef Matrix< double,
General, RowSparse,
SELDON_DEFAULT_ALLOCATOR
< double > > 
DGRSMat
typedef Matrix< complex< float >
, General, RowSparse,
SELDON_DEFAULT_ALLOCATOR
< complex< float > > > 
CGRSMat
typedef Matrix< complex
< double >, General, RowSparse,
SELDON_DEFAULT_ALLOCATOR
< complex< double > > > 
ZGRSMat
typedef Matrix< int, General,
ColSparse,
SELDON_DEFAULT_ALLOCATOR< int > > 
IGCSMat
typedef Matrix< float, General,
ColSparse,
SELDON_DEFAULT_ALLOCATOR
< float > > 
SGCSMat
typedef Matrix< double,
General, ColSparse,
SELDON_DEFAULT_ALLOCATOR
< double > > 
DGCSMat
typedef Matrix< complex< float >
, General, ColSparse,
SELDON_DEFAULT_ALLOCATOR
< complex< float > > > 
CGCSMat
typedef Matrix< complex
< double >, General, ColSparse,
SELDON_DEFAULT_ALLOCATOR
< complex< double > > > 
ZGCSMat

Functions

template<class T , class Allocator >
ostream & operator<< (ostream &out, const Array3D< T, Allocator > &A)
 operator<< overloaded for a 3D array.
template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 >
void Mlt (const T0 alpha, Matrix< T1, Prop1, Storage1, Allocator1 > &A) throw ()
 Multiplies a matrix by a scalar.
template<class T0 , class T1 , class Prop1 , class Allocator1 >
void Mlt (const T0 alpha, Matrix< T1, Prop1, ColMajorCollection, Allocator1 > &A)
 Multiplies a matrix by a scalar.
template<class T0 , class T1 , class Prop1 , class Allocator1 >
void Mlt (const T0 alpha, Matrix< T1, Prop1, RowMajorCollection, Allocator1 > &A)
 Multiplies a matrix by a scalar.
template<class T0 , class Allocator >
void Mlt (const T0 alpha, Matrix< FloatDouble, General, DenseSparseCollection, Allocator > &A)
 Multiplies a FloatDouble collection by a scalar.
template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 , class T3 , class Prop3 , class Storage3 , class Allocator3 >
void Mlt (const T0 alpha, const Matrix< T1, Prop1, Storage1, Allocator1 > &A, const Matrix< T2, Prop2, Storage2, Allocator2 > &B, Matrix< T3, Prop3, Storage3, Allocator3 > &C)
 Multiplies two matrices.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 >
void Mlt (const Matrix< T0, Prop0, Storage0, Allocator0 > &A, const Matrix< T1, Prop1, Storage1, Allocator1 > &B, Matrix< T2, Prop2, Storage2, Allocator2 > &C)
 Multiplies two matrices.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Mlt (const Matrix< T0, Prop0, RowSparse, Allocator0 > &A, const Matrix< T1, Prop1, RowSparse, Allocator1 > &B, Matrix< T2, Prop2, RowSparse, Allocator2 > &C)
 Multiplies two row-major sparse matrices in Harwell-Boeing format.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void MltNoTransTrans (const Matrix< T0, Prop0, RowSparse, Allocator0 > &A, const Matrix< T1, Prop1, RowSparse, Allocator1 > &B, Matrix< T2, Prop2, RowSparse, Allocator2 > &C)
 Multiplies two row-major sparse matrices in Harwell-Boeing format.
template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, Storage1, Allocator1 > &A, const Matrix< T2, Prop2, Storage2, Allocator2 > &B, const T3 beta, Matrix< T4, Prop4, Storage4, Allocator4 > &C)
 Multiplies two matrices, and adds the result to a third matrix.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, RowMajorCollection, Allocator1 > &A, const Matrix< T2, Prop2, RowMajorCollection, Allocator2 > &B, const T3 beta, Matrix< T4, Prop4, RowMajorCollection, Allocator4 > &C)
 Multiplies two matrices, and adds the result to a third matrix.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, ColMajorCollection, Allocator1 > &A, const Matrix< T2, Prop2, ColMajorCollection, Allocator2 > &B, const T3 beta, Matrix< T4, Prop4, ColMajorCollection, Allocator4 > &C)
 Multiplies two matrices, and adds the result to a third matrix.
template<class T0 , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class T4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, General, RowMajor, Allocator1 > &A, const Matrix< T2, General, RowMajor, Allocator2 > &B, const T3 beta, Matrix< T4, General, RowSparse, Allocator4 > &C)
template<class T0 , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class T4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, General, RowMajor, Allocator1 > &A, const Matrix< T2, General, RowSparse, Allocator2 > &B, const T3 beta, Matrix< T4, General, RowSparse, Allocator4 > &C)
template<class T0 , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class T4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, General, RowSparse, Allocator1 > &A, const Matrix< T2, General, RowMajor, Allocator2 > &B, const T3 beta, Matrix< T4, General, RowSparse, Allocator4 > &C)
template<class T0 , class Allocator1 , class Allocator2 , class Allocator3 , class T4 , class Prop4 , class Storage4 , class Allocator4 >
void MltAdd_heterogeneous (const T0 alpha, const Matrix< FloatDouble, General, DenseSparseCollection, Allocator1 > &A, const Matrix< FloatDouble, General, DenseSparseCollection, Allocator2 > &B, Matrix< FloatDouble, General, DenseSparseCollection, Allocator3 > &C, Matrix< T4, Prop4, Storage4, Allocator4 > &mc, int i, int j)
template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class Allocator2 , class Allocator3 , class T4 , class Prop4 , class Storage4 , class Allocator4 >
void MltAdd_heterogeneous2 (const T0 alpha, const Matrix< T1, Prop1, Storage1, Allocator1 > &ma, const Matrix< FloatDouble, General, DenseSparseCollection, Allocator2 > &B, Matrix< FloatDouble, General, DenseSparseCollection, Allocator3 > &C, Matrix< T4, Prop4, Storage4, Allocator4 > &mc, int j, int k)
template<class T0 , class Allocator1 , class Allocator2 , class T3 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< FloatDouble, General, DenseSparseCollection, Allocator1 > &A, const Matrix< FloatDouble, General, DenseSparseCollection, Allocator2 > &B, const T3 beta, Matrix< FloatDouble, General, DenseSparseCollection, Allocator4 > &C)
 Multiplies a FloatDouble collection by a scalar.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, RowSparse, Allocator1 > &A, const Matrix< T2, Prop2, RowSparse, Allocator2 > &B, const T3 beta, Matrix< T4, Prop4, RowSparse, Allocator4 > &C)
 Multiplies two row-major sparse matrices and adds the result to a third.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Allocator4 >
void MltNoTransTransAdd (const T0 alpha, const Matrix< T1, Prop1, RowSparse, Allocator1 > &A, const Matrix< T2, Prop2, RowSparse, Allocator2 > &B, const T3 beta, Matrix< T4, Prop4, RowSparse, Allocator4 > &C)
 Multiplies two row-major sparse matrices and adds the result to a third.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Allocator4 >
void MltAdd (const T0 alpha, const SeldonTranspose &TransA, const Matrix< T1, Prop1, RowSparse, Allocator1 > &A, const SeldonTranspose &TransB, const Matrix< T2, Prop2, RowSparse, Allocator2 > &B, const T3 beta, Matrix< T4, Prop4, RowSparse, Allocator4 > &C)
 Multiplies two row-major sparse matrices and adds the result to a third.
template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, Prop1, Storage1, Allocator1 > &A, Matrix< T2, Prop2, Storage2, Allocator2 > &B)
 Adds two matrices.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, Prop1, RowMajorCollection, Allocator1 > &A, Matrix< T2, Prop2, RowMajorCollection, Allocator2 > &B)
 Adds two matrices.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, Prop1, ColMajorCollection, Allocator1 > &A, Matrix< T2, Prop2, ColMajorCollection, Allocator2 > &B)
 Adds two matrices.
template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class Allocator2 >
void Add_heterogeneous (const T0 alpha, const Matrix< T1, Prop1, Storage1, Allocator1 > &ma, Matrix< FloatDouble, General, DenseSparseCollection, Allocator2 > &B, int i, int j)
template<class T0 , class Allocator1 , class Allocator2 >
void Add (const T0 alpha, const Matrix< FloatDouble, General, DenseSparseCollection, Allocator1 > &A, Matrix< FloatDouble, General, DenseSparseCollection, Allocator2 > &B)
 Multiplies a FloatDouble collection by a scalar.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, Prop1, RowMajor, Allocator1 > &A, Matrix< T2, Prop2, RowSparse, Allocator2 > &B) throw ()
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, Prop1, ColMajor, Allocator1 > &A, Matrix< T2, Prop2, RowSparse, Allocator2 > &B) throw ()
template<class T0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, Symmetric, Storage1, Allocator1 > &A, Matrix< T2, Symmetric, Storage2, Allocator2 > &B)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, Prop1, RowSparse, Allocator1 > &A, Matrix< T2, Prop2, RowSparse, Allocator2 > &B)
 Adds two matrices.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 >
void GetLU (Matrix< T0, Prop0, Storage0, Allocator0 > &A)
 Returns the LU factorization of a matrix.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 >
void CheckDim (const Matrix< T0, Prop0, Storage0, Allocator0 > &A, const Matrix< T1, Prop1, Storage1, Allocator1 > &B, const Matrix< T2, Prop2, Storage2, Allocator2 > &C, string function="")
 Checks the compatibility of the dimensions.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 >
void CheckDim (const SeldonSide &side, const Matrix< T0, Prop0, Storage0, Allocator0 > &A, const Matrix< T1, Prop1, Storage1, Allocator1 > &B, const Matrix< T2, Prop2, Storage2, Allocator2 > &C, string function="")
 Checks the compatibility of the dimensions.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 >
void CheckDim (const SeldonTranspose &TransA, const Matrix< T0, Prop0, Storage0, Allocator0 > &A, const SeldonTranspose &TransB, const Matrix< T1, Prop1, Storage1, Allocator1 > &B, string function="")
 Checks the compatibility of the dimensions.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 >
void CheckDim (const SeldonTranspose &TransA, const Matrix< T0, Prop0, Storage0, Allocator0 > &A, const SeldonTranspose &TransB, const Matrix< T1, Prop1, Storage1, Allocator1 > &B, const Matrix< T2, Prop2, Storage2, Allocator2 > &C, string function="")
 Checks the compatibility of the dimensions.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 >
void CheckDim (const Matrix< T0, Prop0, Storage0, Allocator0 > &A, const Matrix< T1, Prop1, Storage1, Allocator1 > &B, string function="")
 Checks the compatibility of the dimensions.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 >
void CheckDim (const SeldonSide &side, const Matrix< T0, Prop0, Storage0, Allocator0 > &A, const Matrix< T1, Prop1, Storage1, Allocator1 > &B, string function="")
 Checks the compatibility of the dimensions.
template<class T , class Prop , class Storage , class Allocator >
MaxAbs (const Matrix< T, Prop, Storage, Allocator > &A)
 Returns the maximum (in absolute value) of a matrix.
template<class T , class Prop , class Storage , class Allocator >
Norm1 (const Matrix< T, Prop, Storage, Allocator > &A)
 Returns the 1-norm of a matrix.
template<class T , class Prop , class Storage , class Allocator >
NormInf (const Matrix< T, Prop, Storage, Allocator > &A)
 Returns the infinity-norm of a matrix.
template<class T , class Prop , class Storage , class Allocator >
MaxAbs (const Matrix< complex< T >, Prop, Storage, Allocator > &A)
 Returns the maximum (in modulus) of a matrix.
template<class T , class Prop , class Storage , class Allocator >
Norm1 (const Matrix< complex< T >, Prop, Storage, Allocator > &A)
 Returns the 1-norm of a matrix.
template<class T , class Prop , class Storage , class Allocator >
NormInf (const Matrix< complex< T >, Prop, Storage, Allocator > &A)
 Returns the infinity-norm of a matrix.
template<class T , class Prop , class Storage , class Allocator >
void Transpose (Matrix< T, Prop, Storage, Allocator > &A)
 Matrix transposition.
template<class T , class Allocator >
void Transpose (Matrix< T, General, RowSparse, Allocator > &A)
 Matrix transposition.
template<class T , class Prop , class Storage , class Allocator >
void TransposeConj (Matrix< T, Prop, Storage, Allocator > &A)
 Matrix transposition and conjugation.
template<class T , class Prop , class Storage , class Allocator >
bool IsSymmetricMatrix (const Matrix< T, Prop, Storage, Allocator > &A)
 returns true if the matrix is symmetric
template<class T , class Storage , class Allocator >
bool IsSymmetricMatrix (const Matrix< T, Symmetric, Storage, Allocator > &A)
 returns true if the matrix is symmetric
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Mlt (const Matrix< T0, Prop0, Storage0, Allocator0 > &M, const Vector< T1, Storage1, Allocator1 > &X, Vector< T2, Storage2, Allocator2 > &Y)
 Performs the multiplication of a matrix with a vector.
template<class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Mlt (const T3 &alpha, const Matrix< T1, Prop1, Storage1, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, Vector< T3, Storage3, Allocator3 > &Y)
 Performs the multiplication of a matrix with a vector.
template<class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Mlt (const SeldonTranspose &Trans, const Matrix< T1, Prop1, Storage1, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, Vector< T3, Storage3, Allocator3 > &Y)
 Performs the multiplication of a matrix with a vector.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, RowSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, RowComplexSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, RowSymSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, RowSymComplexSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonNoTrans &Trans, const Matrix< T1, Prop1, RowSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonTrans &Trans, const Matrix< T1, Prop1, RowSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonConjTrans &Trans, const Matrix< complex< T1 >, Prop1, RowSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonNoTrans &Trans, const Matrix< T1, Prop1, RowComplexSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonTrans &Trans, const Matrix< T1, Prop1, RowComplexSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonConjTrans &Trans, const Matrix< T1, Prop1, RowComplexSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonNoTrans &Trans, const Matrix< T1, Prop1, RowSymSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonTrans &Trans, const Matrix< T1, Prop1, RowSymSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonConjTrans &Trans, const Matrix< complex< T1 >, Prop1, RowSymSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonNoTrans &Trans, const Matrix< T1, Prop1, RowSymComplexSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonTrans &Trans, const Matrix< T1, Prop1, RowSymComplexSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const class_SeldonConjTrans &Trans, const Matrix< T1, Prop1, RowSymComplexSparse, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, Storage1, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
 Performs the multiplication of a matrix with a vector, and adds the result to another vector.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class T4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, RowMajorCollection, Allocator1 > &M, const Vector< T2, Collection, Allocator2 > &X, const T3 beta, Vector< T4, Collection, Allocator4 > &Y)
 Performs the multiplication of a matrix collection with a vector collection, and adds the result to another vector.
template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class T4 , class Allocator4 >
void MltAdd (const T0 alpha, const Matrix< T1, Prop1, ColMajorCollection, Allocator1 > &M, const Vector< T2, Collection, Allocator2 > &X, const T3 beta, Vector< T4, Collection, Allocator4 > &Y)
 Performs the multiplication of a matrix collection with a vector collection, and adds the result to another vector.
template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void MltAdd (const T0 alpha, const SeldonTranspose &Trans, const Matrix< T1, Prop1, Storage1, Allocator1 > &M, const Vector< T2, Storage2, Allocator2 > &X, const T3 beta, Vector< T4, Storage4, Allocator4 > &Y)
 Performs the multiplication of a matrix (possibly transposed) with a vector, and adds the result to another vector.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void Gauss (Matrix< T0, Prop0, Storage0, Allocator0 > &M, Vector< T1, Storage1, Allocator1 > &X)
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void GaussSeidel (const Matrix< T0, Prop0, Storage0, Allocator0 > &M, const Vector< T1, Storage1, Allocator1 > &X, Vector< T2, Storage2, Allocator2 > &Y, int iter)
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void SOR (const Matrix< T0, Prop0, Storage0, Allocator0 > &M, const Vector< T1, Storage1, Allocator1 > &X, Vector< T2, Storage2, Allocator2 > &Y, T3 omega, int iter)
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void SolveLU (const Matrix< T0, Prop0, Storage0, Allocator0 > &M, Vector< T1, Storage1, Allocator1 > &Y)
 Solves a linear system whose matrix has been LU-factorized.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void GetAndSolveLU (Matrix< T0, Prop0, Storage0, Allocator0 > &M, Vector< T1, Storage1, Allocator1 > &Y)
 Solves a linear system using LU factorization.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void CheckDim (const Matrix< T0, Prop0, Storage0, Allocator0 > &M, const Vector< T1, Storage1, Allocator1 > &X, const Vector< T2, Storage2, Allocator2 > &Y, string function="")
 Checks the compatibility of the dimensions.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Allocator1 , class T2 , class Allocator2 >
void CheckDim (const Matrix< T0, Prop0, RowMajorCollection, Allocator0 > &M, const Vector< T1, Collection, Allocator1 > &X, const Vector< T2, Collection, Allocator2 > &Y, string function="")
 Checks the compatibility of the dimensions.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Allocator1 , class T2 , class Allocator2 >
void CheckDim (const Matrix< T0, Prop0, ColMajorCollection, Allocator0 > &M, const Vector< T1, Collection, Allocator1 > &X, const Vector< T2, Collection, Allocator2 > &Y, string function="")
 Checks the compatibility of the dimensions.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void CheckDim (const Matrix< T0, Prop0, Storage0, Allocator0 > &M, const Vector< T1, Collection, Allocator1 > &X, const Vector< T2, Storage2, Allocator2 > &Y, string function="")
 Checks the compatibility of the dimensions.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void CheckDim (const SeldonTranspose &trans, const Matrix< T0, Prop0, Storage0, Allocator0 > &M, const Vector< T1, Storage1, Allocator1 > &X, const Vector< T2, Storage2, Allocator2 > &Y, string function="", string op="M X + Y -> Y")
 Checks the compatibility of the dimensions.
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void CheckDim (const Matrix< T0, Prop0, Storage0, Allocator0 > &M, const Vector< T1, Storage1, Allocator1 > &X, string function="", string op="M X")
 Checks the compatibility of the dimensions.
template<class T0 , class T1 , class Storage1 , class Allocator1 >
void Mlt (const T0 alpha, Vector< T1, Storage1, Allocator1 > &X) throw ()
template<class T0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Add (const T0 alpha, const Vector< T1, Storage1, Allocator1 > &X, Vector< T2, Storage2, Allocator2 > &Y) throw (WrongDim, NoMemory)
template<class T0 , class T1 , class Allocator1 , class T2 , class Allocator2 >
void Add (const T0 alpha, const Vector< T1, VectSparse, Allocator1 > &X, Vector< T2, VectSparse, Allocator2 > &Y) throw (WrongDim, NoMemory)
template<class T0 , class T1 , class Allocator1 , class T2 , class Allocator2 >
void Add (const T0 alpha, const Vector< T1, Collection, Allocator1 > &X, Vector< T2, Collection, Allocator2 > &Y)
template<class T0 , class T1 , template< class U1 > class Allocator1, class T2 , template< class U2 > class Allocator2>
void Add (const T0 alpha, const Vector< FloatDouble, DenseSparseCollection, Allocator1< T1 > > &X, Vector< FloatDouble, DenseSparseCollection, Allocator2< T2 > > &Y)
template<class T0 , class T1 , template< class U1 > class Allocator1, class T2 , class Storage2 , class Allocator2 >
void Add (const T0 alpha, const Vector< FloatDouble, DenseSparseCollection, Allocator1< T1 > > &X, Vector< T2, Storage2, Allocator2 > &Y) throw (WrongDim, NoMemory)
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Copy (const Vector< T1, Storage1, Allocator1 > &X, Vector< T2, Storage2, Allocator2 > &Y)
template<class T , class Storage , class Allocator >
void Swap (Vector< T, Storage, Allocator > &X, Vector< T, Storage, Allocator > &Y)
template<class T , class Allocator >
void Swap (Vector< T, VectSparse, Allocator > &X, Vector< T, VectSparse, Allocator > &Y)
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
T1 DotProd (const Vector< T1, Storage1, Allocator1 > &X, const Vector< T2, Storage2, Allocator2 > &Y)
 Scalar product between two vectors.
template<class T1 , class Allocator1 , class T2 , class Allocator2 >
T1::value_type DotProd (const Vector< T1, Collection, Allocator1 > &X, const Vector< T2, Collection, Allocator2 > &Y)
 Scalar product between two vector collections.
template<class T1 , template< class U1 > class Allocator1, class T2 , template< class U2 > class Allocator2>
double DotProd (const Vector< FloatDouble, DenseSparseCollection, Allocator1< T1 > > &X, const Vector< FloatDouble, DenseSparseCollection, Allocator2< T2 > > &Y)
 Scalar product between two vector collections.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
T1 DotProdConj (const Vector< T1, Storage1, Allocator1 > &X, const Vector< T2, Storage2, Allocator2 > &Y)
 Scalar product between two vectors.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
complex< T1 > DotProdConj (const Vector< complex< T1 >, Storage1, Allocator1 > &X, const Vector< T2, Storage2, Allocator2 > &Y)
 Scalar product between two vectors.
template<class T1 , class Allocator1 , class T2 , class Allocator2 >
T1 DotProd (const Vector< T1, VectSparse, Allocator1 > &X, const Vector< T2, VectSparse, Allocator2 > &Y)
 Scalar product between two sparse vectors.
template<class T1 , class Allocator1 , class T2 , class Allocator2 >
complex< T1 > DotProdConj (const Vector< complex< T1 >, VectSparse, Allocator1 > &X, const Vector< T2, VectSparse, Allocator2 > &Y)
 Scalar product between two sparse vectors.
template<class T1 , class Storage1 , class Allocator1 >
T1 Norm1 (const Vector< T1, Storage1, Allocator1 > &X)
template<class T1 , class Storage1 , class Allocator1 >
T1 Norm1 (const Vector< complex< T1 >, Storage1, Allocator1 > &X)
template<class T1 , class Allocator1 >
T1 Norm1 (const Vector< T1, VectSparse, Allocator1 > &X)
template<class T1 , class Allocator1 >
T1 Norm1 (const Vector< complex< T1 >, VectSparse, Allocator1 > &X)
template<class T1 , class Storage1 , class Allocator1 >
T1 Norm2 (const Vector< T1, Storage1, Allocator1 > &X)
template<class T1 , class Storage1 , class Allocator1 >
T1 Norm2 (const Vector< complex< T1 >, Storage1, Allocator1 > &X)
template<class T1 , class Allocator1 >
T1 Norm2 (const Vector< T1, VectSparse, Allocator1 > &X)
template<class T1 , class Allocator1 >
T1 Norm2 (const Vector< complex< T1 >, VectSparse, Allocator1 > &X)
template<class T , class Storage , class Allocator >
int GetMaxAbsIndex (const Vector< T, Storage, Allocator > &X)
template<class T >
void GenRot (T &a_in, T &b_in, T &c_, T &s_)
 Computation of rotation between two points.
template<class T >
void GenRot (complex< T > &a_in, complex< T > &b_in, T &c_, complex< T > &s_)
 Computation of rotation between two points.
template<class T >
void ApplyRot (T &x, T &y, const T c_, const T s_)
 Rotation of a point in 2-D.
template<class T >
void ApplyRot (complex< T > &x, complex< T > &y, const T &c_, const complex< T > &s_)
 Rotation of a complex point in 2-D.
template<class T0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void CheckDim (const Vector< T0, Storage0, Allocator0 > &X, const Vector< T1, Storage1, Allocator1 > &Y, string function="", string op="X + Y")
 Checks the compatibility of the dimensions.
template<class T0 , class Allocator0 , class T1 , class Allocator1 >
void CheckDim (const Vector< T0, Vect_Sparse, Allocator0 > &X, const Vector< T1, Vect_Sparse, Allocator1 > &Y, string function="", string op="X + Y")
 Checks the compatibility of the dimensions.
template<class T0 , class Allocator0 , class T1 , class Allocator1 >
void CheckDim (const Vector< T0, Collection, Allocator0 > &X, const Vector< T1, Collection, Allocator1 > &Y, string function="", string op="X + Y")
 Checks the compatibility of the dimensions.
template<class T0 , class Allocator0 , class Allocator00 , class T1 , class Allocator1 , class Allocator11 >
void CheckDim (const Vector< Vector< T0, Vect_Sparse, Allocator0 >, Collection, Allocator00 > &X, const Vector< Vector< T1, Vect_Sparse, Allocator1 >, Collection, Allocator11 > &Y, string function="", string op="X + Y")
 Checks the compatibility of the dimensions.
template<class T0 , class Allocator0 , class T1 , class Allocator1 >
void CheckDim (const Vector< T0, VectFull, Allocator0 > &X, Vector< T1, Collection, Allocator1 > &Y, string function="", string op="X + Y")
 Checks the compatibility of the dimensions.
template<class T0 , template< class U0 > class Allocator0, class T1 , template< class U1 > class Allocator1>
void CheckDim (const Vector< FloatDouble, DenseSparseCollection, Allocator0< T0 > > &X, const Vector< FloatDouble, DenseSparseCollection, Allocator1< T1 > > &Y, string function="", string op="X + Y")
 Checks the compatibility of the dimensions.
template<class T , class Prop , class Allocator >
void Conjugate (Vector< T, Prop, Allocator > &X)
 Sets a vector to its conjugate.
template<class T , class Allocator >
void Conjugate (Vector< T, VectSparse, Allocator > &X)
 Sets a vector to its conjugate.
void GenRot (float &a, float &b, float &c, float &d)
void GenRot (double &a, double &b, double &c, double &d)
void GenModifRot (float &d1, float &d2, float &x1, const float &y1, float *param)
void GenModifRot (double &d1, double &d2, double &x1, const double &y1, double *param)
template<class Allocator >
void ApplyRot (Vector< float, VectFull, Allocator > &X, Vector< float, VectFull, Allocator > &Y, const float c, const float s)
template<class Allocator >
void ApplyRot (Vector< double, VectFull, Allocator > &X, Vector< double, VectFull, Allocator > &Y, const double c, const double s)
template<class Allocator >
void ApplyModifRot (Vector< float, VectFull, Allocator > &X, Vector< float, VectFull, Allocator > &Y, const float *param)
template<class Allocator >
void ApplyModifRot (Vector< double, VectFull, Allocator > &X, Vector< double, VectFull, Allocator > &Y, const double *param)
template<class Allocator >
void Swap (Vector< float, VectFull, Allocator > &X, Vector< float, VectFull, Allocator > &Y)
template<class Allocator >
void Swap (Vector< double, VectFull, Allocator > &X, Vector< double, VectFull, Allocator > &Y)
template<class Allocator >
void Swap (Vector< complex< float >, VectFull, Allocator > &X, Vector< complex< float >, VectFull, Allocator > &Y)
template<class Allocator >
void Swap (Vector< complex< double >, VectFull, Allocator > &X, Vector< complex< double >, VectFull, Allocator > &Y)
template<class Allocator >
void Mlt (const float alpha, Vector< float, VectFull, Allocator > &X)
template<class Allocator >
void Mlt (const double alpha, Vector< double, VectFull, Allocator > &X)
template<class Allocator >
void Mlt (const float alpha, Vector< complex< float >, VectFull, Allocator > &X)
template<class Allocator >
void Mlt (const double alpha, Vector< complex< double >, VectFull, Allocator > &X)
template<class Allocator >
void Mlt (const complex< float > alpha, Vector< complex< float >, VectFull, Allocator > &X)
template<class Allocator >
void Mlt (const complex< double > alpha, Vector< complex< double >, VectFull, Allocator > &X)
template<class Allocator0 , class Allocator1 >
void Copy (const Vector< float, VectFull, Allocator0 > &X, Vector< float, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
void Copy (const Vector< double, VectFull, Allocator0 > &X, Vector< double, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
void Copy (const Vector< complex< float >, VectFull, Allocator0 > &X, Vector< complex< float >, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
void Copy (const Vector< complex< double >, VectFull, Allocator0 > &X, Vector< complex< double >, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
void Add (const float alpha, const Vector< float, VectFull, Allocator0 > &X, Vector< float, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
void Add (const double alpha, const Vector< double, VectFull, Allocator0 > &X, Vector< double, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
void Add (const complex< float > alpha, const Vector< complex< float >, VectFull, Allocator0 > &X, Vector< complex< float >, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
void Add (const complex< double > alpha, const Vector< complex< double >, VectFull, Allocator0 > &X, Vector< complex< double >, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
float DotProd (const Vector< float, VectFull, Allocator0 > &X, const Vector< float, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
double DotProd (const Vector< double, VectFull, Allocator0 > &X, const Vector< double, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
complex< float > DotProd (const Vector< complex< float >, VectFull, Allocator0 > &X, const Vector< complex< float >, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
complex< double > DotProd (const Vector< complex< double >, VectFull, Allocator0 > &X, const Vector< complex< double >, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
float ScaledDotProd (const float alpha, const Vector< float, VectFull, Allocator0 > &X, const Vector< float, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
complex< float > DotProdConj (const Vector< complex< float >, VectFull, Allocator0 > &X, const Vector< complex< float >, VectFull, Allocator1 > &Y)
template<class Allocator0 , class Allocator1 >
complex< double > DotProdConj (const Vector< complex< double >, VectFull, Allocator0 > &X, const Vector< complex< double >, VectFull, Allocator1 > &Y)
template<class Allocator >
float Norm1 (const Vector< float, VectFull, Allocator > &X)
template<class Allocator >
double Norm1 (const Vector< double, VectFull, Allocator > &X)
template<class Allocator >
float Norm1 (const Vector< complex< float >, VectFull, Allocator > &X)
template<class Allocator >
double Norm1 (const Vector< complex< double >, VectFull, Allocator > &X)
template<class Allocator >
float Norm2 (const Vector< float, VectFull, Allocator > &X)
template<class Allocator >
double Norm2 (const Vector< double, VectFull, Allocator > &X)
template<class Allocator >
float Norm2 (const Vector< complex< float >, VectFull, Allocator > &X)
template<class Allocator >
double Norm2 (const Vector< complex< double >, VectFull, Allocator > &X)
template<class Allocator >
size_t GetMaxAbsIndex (const Vector< float, VectFull, Allocator > &X)
template<class Allocator >
size_t GetMaxAbsIndex (const Vector< double, VectFull, Allocator > &X)
template<class Allocator >
size_t GetMaxAbsIndex (const Vector< complex< float >, VectFull, Allocator > &X)
template<class Allocator >
size_t GetMaxAbsIndex (const Vector< complex< double >, VectFull, Allocator > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Mlt (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const Matrix< float, Prop0, ColMajor, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const Matrix< double, Prop0, ColMajor, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const SeldonTranspose &TransA, const Matrix< float, Prop0, ColMajor, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const SeldonTranspose &TransA, const Matrix< double, Prop0, ColMajor, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const SeldonTranspose &TransA, const Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const SeldonTranspose &TransA, const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const Matrix< float, Prop0, RowMajor, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const Matrix< double, Prop0, RowMajor, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const SeldonTranspose &TransA, const Matrix< float, Prop0, RowMajor, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const SeldonTranspose &TransA, const Matrix< double, Prop0, RowMajor, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const SeldonTranspose &TransA, const Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const SeldonTranspose &TransA, const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const Matrix< complex< float >, Prop0, ColHerm, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const Matrix< complex< double >, Prop0, ColHerm, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const SeldonUplo &Uplo, const Matrix< complex< float >, Prop0, ColHerm, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const SeldonUplo &Uplo, const Matrix< complex< double >, Prop0, ColHerm, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const Matrix< complex< float >, Prop0, RowHerm, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const Matrix< complex< double >, Prop0, RowHerm, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const SeldonUplo &Uplo, const Matrix< complex< float >, Prop0, RowHerm, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const SeldonUplo &Uplo, const Matrix< complex< double >, Prop0, RowHerm, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const Matrix< complex< float >, Prop0, ColHermPacked, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const Matrix< complex< double >, Prop0, ColHermPacked, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const SeldonUplo &Uplo, const Matrix< complex< float >, Prop0, ColHermPacked, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const SeldonUplo &Uplo, const Matrix< complex< double >, Prop0, ColHermPacked, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const Matrix< complex< float >, Prop0, RowHermPacked, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const Matrix< complex< double >, Prop0, RowHermPacked, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< float > alpha, const SeldonUplo &Uplo, const Matrix< complex< float >, Prop0, RowHermPacked, Allocator0 > &A, const Vector< complex< float >, VectFull, Allocator1 > &X, const complex< float > beta, Vector< complex< float >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const complex< double > alpha, const SeldonUplo &Uplo, const Matrix< complex< double >, Prop0, RowHermPacked, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &X, const complex< double > beta, Vector< complex< double >, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const Matrix< float, Prop0, ColSym, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const Matrix< double, Prop0, ColSym, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const SeldonUplo &Uplo, const Matrix< float, Prop0, ColSym, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const SeldonUplo &Uplo, const Matrix< double, Prop0, ColSym, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const Matrix< float, Prop0, RowSym, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const Matrix< double, Prop0, RowSym, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const SeldonUplo &Uplo, const Matrix< float, Prop0, RowSym, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const SeldonUplo &Uplo, const Matrix< double, Prop0, RowSym, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const Matrix< float, Prop0, ColSymPacked, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const Matrix< double, Prop0, ColSymPacked, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const SeldonUplo &Uplo, const Matrix< float, Prop0, ColSymPacked, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const SeldonUplo &Uplo, const Matrix< double, Prop0, ColSymPacked, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const Matrix< float, Prop0, RowSymPacked, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const Matrix< double, Prop0, RowSymPacked, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const float alpha, const SeldonUplo &Uplo, const Matrix< float, Prop0, RowSymPacked, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &X, const float beta, Vector< float, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void MltAdd (const double alpha, const SeldonUplo &Uplo, const Matrix< double, Prop0, RowSymPacked, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &X, const double beta, Vector< double, VectFull, Allocator2 > &Y)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const float alpha, const Vector< float, VectFull, Allocator1 > &X, const Vector< float, VectFull, Allocator2 > &Y, Matrix< float, Prop0, ColMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const double alpha, const Vector< double, VectFull, Allocator1 > &X, const Vector< double, VectFull, Allocator2 > &Y, Matrix< double, Prop0, ColMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const complex< float > alpha, const Vector< complex< float >, VectFull, Allocator1 > &X, const Vector< complex< float >, VectFull, Allocator2 > &Y, Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const complex< double > alpha, const Vector< complex< double >, VectFull, Allocator1 > &X, const Vector< complex< double >, VectFull, Allocator2 > &Y, Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const complex< float > alpha, const Vector< complex< float >, VectFull, Allocator1 > &X, const SeldonConjugate &ConjY, const Vector< complex< float >, VectFull, Allocator2 > &Y, Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const complex< double > alpha, const Vector< complex< double >, VectFull, Allocator1 > &X, const SeldonConjugate &ConjY, const Vector< complex< double >, VectFull, Allocator2 > &Y, Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const float alpha, const Vector< float, VectFull, Allocator1 > &X, const Vector< float, VectFull, Allocator2 > &Y, Matrix< float, Prop0, RowMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const double alpha, const Vector< double, VectFull, Allocator1 > &X, const Vector< double, VectFull, Allocator2 > &Y, Matrix< double, Prop0, RowMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const complex< float > alpha, const Vector< complex< float >, VectFull, Allocator1 > &X, const Vector< complex< float >, VectFull, Allocator2 > &Y, Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const complex< double > alpha, const Vector< complex< double >, VectFull, Allocator1 > &X, const Vector< complex< double >, VectFull, Allocator2 > &Y, Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const complex< float > alpha, const Vector< complex< float >, VectFull, Allocator1 > &X, const SeldonConjugate &ConjY, const Vector< complex< float >, VectFull, Allocator2 > &Y, Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void Rank1Update (const complex< double > alpha, const Vector< complex< double >, VectFull, Allocator1 > &X, const SeldonConjugate &ConjY, const Vector< complex< double >, VectFull, Allocator2 > &Y, Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const float alpha, const Vector< float, VectFull, Allocator0 > &X, Matrix< float, Prop1, ColSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const double alpha, const Vector< double, VectFull, Allocator0 > &X, Matrix< double, Prop1, ColSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const float alpha, const Vector< complex< float >, VectFull, Allocator0 > &X, Matrix< complex< float >, Prop1, ColHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const double alpha, const Vector< complex< double >, VectFull, Allocator0 > &X, Matrix< complex< double >, Prop1, ColHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const float alpha, const Vector< float, VectFull, Allocator0 > &X, const SeldonUplo &Uplo, Matrix< float, Prop1, ColSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const double alpha, const Vector< double, VectFull, Allocator0 > &X, const SeldonUplo &Uplo, Matrix< double, Prop1, ColSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const float alpha, const Vector< complex< float >, VectFull, Allocator0 > &X, const SeldonUplo &Uplo, Matrix< complex< float >, Prop1, ColHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const double alpha, const Vector< complex< double >, VectFull, Allocator0 > &X, const SeldonUplo &Uplo, Matrix< complex< double >, Prop1, ColHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const float alpha, const Vector< float, VectFull, Allocator0 > &X, Matrix< float, Prop1, RowSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const double alpha, const Vector< double, VectFull, Allocator0 > &X, Matrix< double, Prop1, RowSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const float alpha, const Vector< complex< float >, VectFull, Allocator0 > &X, Matrix< complex< float >, Prop1, RowHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const double alpha, const Vector< complex< double >, VectFull, Allocator0 > &X, Matrix< complex< double >, Prop1, RowHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const float alpha, const Vector< float, VectFull, Allocator0 > &X, const SeldonUplo &Uplo, Matrix< float, Prop1, RowSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const double alpha, const Vector< double, VectFull, Allocator0 > &X, const SeldonUplo &Uplo, Matrix< double, Prop1, RowSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const float alpha, const Vector< complex< float >, VectFull, Allocator0 > &X, const SeldonUplo &Uplo, Matrix< complex< float >, Prop1, RowHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 >
void Rank1Update (const double alpha, const Vector< complex< double >, VectFull, Allocator0 > &X, const SeldonUplo &Uplo, Matrix< complex< double >, Prop1, RowHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const float alpha, const Vector< float, VectFull, Allocator0 > &X, const Vector< float, VectFull, Allocator2 > &Y, Matrix< float, Prop1, ColSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const double alpha, const Vector< double, VectFull, Allocator0 > &X, const Vector< double, VectFull, Allocator2 > &Y, Matrix< double, Prop1, ColSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const complex< float > alpha, const Vector< complex< float >, VectFull, Allocator0 > &X, const Vector< complex< float >, VectFull, Allocator2 > &Y, Matrix< complex< float >, Prop1, ColHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const complex< double > alpha, const Vector< complex< double >, VectFull, Allocator0 > &X, const Vector< complex< double >, VectFull, Allocator2 > &Y, Matrix< complex< double >, Prop1, ColHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const float alpha, const Vector< float, VectFull, Allocator0 > &X, const Vector< float, VectFull, Allocator2 > &Y, const SeldonUplo &Uplo, Matrix< float, Prop1, ColSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const double alpha, const Vector< double, VectFull, Allocator0 > &X, const Vector< double, VectFull, Allocator2 > &Y, const SeldonUplo &Uplo, Matrix< double, Prop1, ColSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const complex< float > alpha, const Vector< complex< float >, VectFull, Allocator0 > &X, const Vector< complex< float >, VectFull, Allocator2 > &Y, const SeldonUplo &Uplo, Matrix< complex< float >, Prop1, ColHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const complex< double > alpha, const Vector< complex< double >, VectFull, Allocator0 > &X, const Vector< complex< double >, VectFull, Allocator2 > &Y, const SeldonUplo &Uplo, Matrix< complex< double >, Prop1, ColHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const float alpha, const Vector< float, VectFull, Allocator0 > &X, const Vector< float, VectFull, Allocator2 > &Y, Matrix< float, Prop1, RowSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const double alpha, const Vector< double, VectFull, Allocator0 > &X, const Vector< double, VectFull, Allocator2 > &Y, Matrix< double, Prop1, RowSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const complex< float > alpha, const Vector< complex< float >, VectFull, Allocator0 > &X, const Vector< complex< float >, VectFull, Allocator2 > &Y, Matrix< complex< float >, Prop1, RowHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const complex< double > alpha, const Vector< complex< double >, VectFull, Allocator0 > &X, const Vector< complex< double >, VectFull, Allocator2 > &Y, Matrix< complex< double >, Prop1, RowHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const float alpha, const Vector< float, VectFull, Allocator0 > &X, const Vector< float, VectFull, Allocator2 > &Y, const SeldonUplo &Uplo, Matrix< float, Prop1, RowSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const double alpha, const Vector< double, VectFull, Allocator0 > &X, const Vector< double, VectFull, Allocator2 > &Y, const SeldonUplo &Uplo, Matrix< double, Prop1, RowSymPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const complex< float > alpha, const Vector< complex< float >, VectFull, Allocator0 > &X, const Vector< complex< float >, VectFull, Allocator2 > &Y, const SeldonUplo &Uplo, Matrix< complex< float >, Prop1, RowHermPacked, Allocator1 > &A)
template<class Allocator0 , class Prop1 , class Allocator1 , class Allocator2 >
void Rank2Update (const complex< double > alpha, const Vector< complex< double >, VectFull, Allocator0 > &X, const Vector< complex< double >, VectFull, Allocator2 > &Y, const SeldonUplo &Uplo, Matrix< complex< double >, Prop1, RowHermPacked, Allocator1 > &A)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Allocator1 >
void Solve (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &X)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const float alpha, const Matrix< float, Prop0, ColMajor, Allocator0 > &A, const Matrix< float, Prop1, ColMajor, Allocator1 > &B, const float beta, Matrix< float, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const double alpha, const Matrix< double, Prop0, ColMajor, Allocator0 > &A, const Matrix< double, Prop1, ColMajor, Allocator1 > &B, const double beta, Matrix< double, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const complex< float > alpha, const Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, const Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const complex< double > alpha, const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, const Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const float alpha, const SeldonTranspose &TransA, const Matrix< float, Prop0, ColMajor, Allocator0 > &A, const SeldonTranspose &TransB, const Matrix< float, Prop1, ColMajor, Allocator1 > &B, const float beta, Matrix< float, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const double alpha, const SeldonTranspose &TransA, const Matrix< double, Prop0, ColMajor, Allocator0 > &A, const SeldonTranspose &TransB, const Matrix< double, Prop1, ColMajor, Allocator1 > &B, const double beta, Matrix< double, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const complex< float > alpha, const SeldonTranspose &TransA, const Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, const SeldonTranspose &TransB, const Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const complex< double > alpha, const SeldonTranspose &TransA, const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, const SeldonTranspose &TransB, const Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const float alpha, const Matrix< float, Prop0, RowMajor, Allocator0 > &A, const Matrix< float, Prop1, RowMajor, Allocator1 > &B, const float beta, Matrix< float, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const double alpha, const Matrix< double, Prop0, RowMajor, Allocator0 > &A, const Matrix< double, Prop1, RowMajor, Allocator1 > &B, const double beta, Matrix< double, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const complex< float > alpha, const Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, const Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const complex< double > alpha, const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, const Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const float alpha, const SeldonTranspose &TransA, const Matrix< float, Prop0, RowMajor, Allocator0 > &A, const SeldonTranspose &TransB, const Matrix< float, Prop1, RowMajor, Allocator1 > &B, const float beta, Matrix< float, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const double alpha, const SeldonTranspose &TransA, const Matrix< double, Prop0, RowMajor, Allocator0 > &A, const SeldonTranspose &TransB, const Matrix< double, Prop1, RowMajor, Allocator1 > &B, const double beta, Matrix< double, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const complex< float > alpha, const SeldonTranspose &TransA, const Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, const SeldonTranspose &TransB, const Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const complex< double > alpha, const SeldonTranspose &TransA, const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, const SeldonTranspose &TransB, const Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const float alpha, const Matrix< float, Prop0, ColSym, Allocator0 > &A, const Matrix< float, Prop1, ColMajor, Allocator1 > &B, const float beta, Matrix< float, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const double alpha, const Matrix< double, Prop0, ColSym, Allocator0 > &A, const Matrix< double, Prop1, ColMajor, Allocator1 > &B, const double beta, Matrix< double, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, ColSym, Allocator0 > &A, const Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, ColSym, Allocator0 > &A, const Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const float alpha, const SeldonUplo &Uplo, const Matrix< float, Prop0, ColSym, Allocator0 > &A, const Matrix< float, Prop1, ColMajor, Allocator1 > &B, const float beta, Matrix< float, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const double alpha, const SeldonUplo &Uplo, const Matrix< double, Prop0, ColSym, Allocator0 > &A, const Matrix< double, Prop1, ColMajor, Allocator1 > &B, const double beta, Matrix< double, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< float > alpha, const SeldonUplo &Uplo, const Matrix< complex< float >, Prop0, ColSym, Allocator0 > &A, const Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< double > alpha, const SeldonUplo &Uplo, const Matrix< complex< double >, Prop0, ColSym, Allocator0 > &A, const Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const float alpha, const Matrix< float, Prop0, RowSym, Allocator0 > &A, const Matrix< float, Prop1, RowMajor, Allocator1 > &B, const float beta, Matrix< float, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const double alpha, const Matrix< double, Prop0, RowSym, Allocator0 > &A, const Matrix< double, Prop1, RowMajor, Allocator1 > &B, const double beta, Matrix< double, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, RowSym, Allocator0 > &A, const Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, RowSym, Allocator0 > &A, const Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const float alpha, const SeldonUplo &Uplo, const Matrix< float, Prop0, RowSym, Allocator0 > &A, const Matrix< float, Prop1, RowMajor, Allocator1 > &B, const float beta, Matrix< float, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const double alpha, const SeldonUplo &Uplo, const Matrix< double, Prop0, RowSym, Allocator0 > &A, const Matrix< double, Prop1, RowMajor, Allocator1 > &B, const double beta, Matrix< double, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< float > alpha, const SeldonUplo &Uplo, const Matrix< complex< float >, Prop0, RowSym, Allocator0 > &A, const Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< double > alpha, const SeldonUplo &Uplo, const Matrix< complex< double >, Prop0, RowSym, Allocator0 > &A, const Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, ColHerm, Allocator0 > &A, const Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, ColHerm, Allocator0 > &A, const Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< float > alpha, const SeldonUplo &Uplo, const Matrix< complex< float >, Prop0, ColHerm, Allocator0 > &A, const Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< double > alpha, const SeldonUplo &Uplo, const Matrix< complex< double >, Prop0, ColHerm, Allocator0 > &A, const Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, ColMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, RowHerm, Allocator0 > &A, const Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, RowHerm, Allocator0 > &A, const Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< float > alpha, const SeldonUplo &Uplo, const Matrix< complex< float >, Prop0, RowHerm, Allocator0 > &A, const Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B, const complex< float > beta, Matrix< complex< float >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 , class Prop2 , class Allocator2 >
void MltAdd (const SeldonSide &Side, const complex< double > alpha, const SeldonUplo &Uplo, const Matrix< complex< double >, Prop0, RowHerm, Allocator0 > &A, const Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B, const complex< double > beta, Matrix< complex< double >, Prop2, RowMajor, Allocator2 > &C)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const float alpha, const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Matrix< float, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const double alpha, const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Matrix< double, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const float alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Matrix< float, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const double alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Matrix< double, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< float > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< double > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const float alpha, const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Matrix< float, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const double alpha, const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Matrix< double, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const float alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Matrix< float, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const double alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Matrix< double, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< float > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< double > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const float alpha, const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Matrix< float, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const double alpha, const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Matrix< double, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const float alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Matrix< float, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const double alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Matrix< double, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< float > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< double > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const float alpha, const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Matrix< float, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const double alpha, const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Matrix< double, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const float alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Matrix< float, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const double alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Matrix< double, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< float > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Mlt (const SeldonSide &Side, const complex< double > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const float alpha, const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Matrix< float, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const double alpha, const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Matrix< double, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const float alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Matrix< float, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const double alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Matrix< double, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< float > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< double > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const float alpha, const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Matrix< float, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const double alpha, const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Matrix< double, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const float alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Matrix< float, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const double alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Matrix< double, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< float > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< double > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const float alpha, const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Matrix< float, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const double alpha, const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Matrix< double, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const float alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Matrix< float, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const double alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Matrix< double, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< float > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< double > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const float alpha, const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Matrix< float, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const double alpha, const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Matrix< double, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< float > alpha, const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< double > alpha, const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const float alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Matrix< float, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const double alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Matrix< double, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< float > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &B)
template<class Prop0 , class Allocator0 , class Prop1 , class Allocator1 >
void Solve (const SeldonSide &Side, const complex< double > alpha, const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &B)
template<class T , class Prop , class Storage , class Allocator >
void GetCholesky (Matrix< T, Prop, Storage, Allocator > &A, MatrixCholmod &mat_chol, bool keep_matrix=false)
template<class T , class Allocator , class Transpose_status >
void SolveCholesky (const Transpose_status &TransA, MatrixCholmod &mat_chol, Vector< T, VectFull, Allocator > &x)
template<class T , class Storage , class Allocator >
void GetLU (Matrix< T, Symmetric, Storage, Allocator > &A, MatrixMumps< T > &mat_lu, bool keep_matrix=false)
template<class T , class Storage , class Allocator >
void GetLU (Matrix< T, General, Storage, Allocator > &A, MatrixMumps< T > &mat_lu, bool keep_matrix=false)
template<class T , class Storage , class Allocator , class MatrixFull >
void GetSchurMatrix (Matrix< T, Symmetric, Storage, Allocator > &A, MatrixMumps< T > &mat_lu, const IVect &num, MatrixFull &schur_matrix, bool keep_matrix=false)
template<class T , class Storage , class Allocator , class MatrixFull >
void GetSchurMatrix (Matrix< T, General, Storage, Allocator > &A, MatrixMumps< T > &mat_lu, const IVect &num, MatrixFull &schur_matrix, bool keep_matrix=false)
template<class T , class Allocator >
void SolveLU (MatrixMumps< T > &mat_lu, Vector< T, VectFull, Allocator > &x)
template<class T , class Allocator , class Transpose_status >
void SolveLU (const Transpose_status &TransA, MatrixMumps< T > &mat_lu, Vector< T, VectFull, Allocator > &x)
template<class T , class Prop , class Allocator >
void SolveLU (MatrixMumps< T > &mat_lu, Matrix< T, Prop, ColMajor, Allocator > &x)
template<class T , class Allocator , class Transpose_status >
void SolveLU (const Transpose_status &TransA, MatrixMumps< T > &mat_lu, Matrix< T, ColMajor, Allocator > &x)
template<class T , class Prop , class Storage , class Allocator >
void GetLU (Matrix< T, Prop, Storage, Allocator > &A, MatrixPastix< T > &mat_lu, bool keep_matrix=false)
template<class T , class Allocator >
void SolveLU (MatrixPastix< T > &mat_lu, Vector< T, VectFull, Allocator > &x)
template<class T , class Allocator , class Transpose_status >
void SolveLU (const Transpose_status &TransA, MatrixPastix< T > &mat_lu, Vector< T, VectFull, Allocator > &x)
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void SparseSolve (Matrix< T0, Prop0, Storage0, Allocator0 > &M, Vector< T1, Storage1, Allocator1 > &Y)
 Solves a sparse linear system using LU factorization.
template<class T , class Prop0 , class Allocator0 , class Allocator1 >
void Solve (Matrix< T, Prop0, ColSparse, Allocator0 > &M, Vector< T, VectFull, Allocator1 > &Y)
template<class T , class Prop0 , class Allocator0 , class Allocator1 >
void Solve (Matrix< T, Prop0, RowSparse, Allocator0 > &M, Vector< T, VectFull, Allocator1 > &Y)
template<class T , class Prop , class Storage , class Allocator >
void GetLU (Matrix< T, Prop, Storage, Allocator > &A, MatrixSuperLU< T > &mat_lu, bool keep_matrix=false)
template<class T , class Allocator >
void SolveLU (MatrixSuperLU< T > &mat_lu, Vector< T, VectFull, Allocator > &x)
template<class T , class Allocator >
void SolveLU (const SeldonTranspose &TransA, MatrixSuperLU< T > &mat_lu, Vector< T, VectFull, Allocator > &x)
template<class T , class Prop , class Storage , class Allocator >
void GetLU (Matrix< T, Prop, Storage, Allocator > &A, MatrixUmfPack< T > &mat_lu, bool keep_matrix=false)
 LU factorization.
template<class T , class Allocator >
void SolveLU (MatrixUmfPack< T > &mat_lu, Vector< T, VectFull, Allocator > &x)
 LU resolution.
template<class T , class Allocator >
void SolveLU (const SeldonTranspose &TransA, MatrixUmfPack< T > &mat_lu, Vector< T, VectFull, Allocator > &x)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< float, Prop, RowMajor, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &wr, Vector< float, VectFull, Allocator3 > &wi, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop, RowMajor, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &wr, Vector< float, VectFull, Allocator3 > &wi, Matrix< float, General, RowMajor, Allocator4 > &zr, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< float >, Prop, RowMajor, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop, RowMajor, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, Matrix< complex< float >, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< double, Prop, RowMajor, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &wr, Vector< double, VectFull, Allocator3 > &wi, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop, RowMajor, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &wr, Vector< double, VectFull, Allocator3 > &wi, Matrix< double, General, RowMajor, Allocator4 > &zr, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< double >, Prop, RowMajor, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop, RowMajor, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, Matrix< complex< double >, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< float, Prop, ColMajor, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &wr, Vector< float, VectFull, Allocator3 > &wi, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop, ColMajor, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &wr, Vector< float, VectFull, Allocator3 > &wi, Matrix< float, General, ColMajor, Allocator4 > &zr, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< float >, Prop, ColMajor, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop, ColMajor, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, Matrix< complex< float >, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< double, Prop, ColMajor, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &wr, Vector< double, VectFull, Allocator3 > &wi, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop, ColMajor, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &wr, Vector< double, VectFull, Allocator3 > &wi, Matrix< double, General, ColMajor, Allocator4 > &zr, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< double >, Prop, ColMajor, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop, ColMajor, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, Matrix< complex< double >, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< float, Prop, RowSym, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop, RowSym, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, Matrix< float, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< float >, Prop, RowSym, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop, RowSym, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, Matrix< complex< float >, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< double, Prop, RowSym, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop, RowSym, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, Matrix< double, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< double >, Prop, RowSym, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop, RowSym, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, Matrix< complex< double >, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< float, Prop, ColSym, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop, ColSym, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, Matrix< float, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< float >, Prop, ColSym, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop, ColSym, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, Matrix< complex< float >, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< double, Prop, ColSym, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop, ColSym, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, Matrix< double, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< double >, Prop, ColSym, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop, ColSym, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, Matrix< complex< double >, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< float >, Prop, RowHerm, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop, RowHerm, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, Matrix< complex< float >, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< double >, Prop, RowHerm, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop, RowHerm, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, Matrix< complex< double >, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< float >, Prop, ColHerm, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop, ColHerm, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, Matrix< complex< float >, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< double >, Prop, ColHerm, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop, ColHerm, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, Matrix< complex< double >, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< float, Prop, RowSymPacked, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop, RowSymPacked, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, Matrix< float, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< float >, Prop, RowSymPacked, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop, RowSymPacked, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, Matrix< complex< float >, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< double, Prop, RowSymPacked, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop, RowSymPacked, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, Matrix< double, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< double >, Prop, RowSymPacked, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop, RowSymPacked, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, Matrix< complex< double >, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< float, Prop, ColSymPacked, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop, ColSymPacked, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, Matrix< float, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< float >, Prop, ColSymPacked, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop, ColSymPacked, Allocator1 > &A, Vector< complex< float >, VectFull, Allocator2 > &w, Matrix< complex< float >, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< double, Prop, ColSymPacked, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop, ColSymPacked, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, Matrix< double, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< double >, Prop, ColSymPacked, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop, ColSymPacked, Allocator1 > &A, Vector< complex< double >, VectFull, Allocator2 > &w, Matrix< complex< double >, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< float >, Prop, RowHermPacked, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop, RowHermPacked, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, Matrix< complex< float >, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< double >, Prop, RowHermPacked, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop, RowHermPacked, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, Matrix< complex< double >, General, RowMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< float >, Prop, ColHermPacked, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop, ColHermPacked, Allocator1 > &A, Vector< float, VectFull, Allocator2 > &w, Matrix< complex< float >, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 >
void GetEigenvalues (Matrix< complex< double >, Prop, ColHermPacked, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, LapackInfo &info=lapack_info)
template<class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop, ColHermPacked, Allocator1 > &A, Vector< double, VectFull, Allocator2 > &w, Matrix< complex< double >, General, ColMajor, Allocator3 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< float, Prop1, RowSym, Allocator1 > &A, Matrix< float, Prop2, RowSym, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop1, RowSym, Allocator1 > &A, Matrix< float, Prop2, RowSym, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, Matrix< float, General, RowMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< complex< float >, Prop1, RowSym, Allocator1 > &A, Matrix< complex< float >, Prop2, RowSym, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator4 > &alpha, Vector< complex< float >, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 , class Allocator6 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop1, RowSym, Allocator1 > &A, Matrix< complex< float >, Prop2, RowSym, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator4 > &alpha, Vector< complex< float >, VectFull, Allocator5 > &beta, Matrix< complex< float >, Prop3, RowMajor, Allocator6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< double, Prop1, RowSym, Allocator1 > &A, Matrix< double, Prop2, RowSym, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop1, RowSym, Allocator1 > &A, Matrix< double, Prop2, RowSym, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, Matrix< double, General, RowMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< complex< double >, Prop1, RowSym, Allocator1 > &A, Matrix< complex< double >, Prop2, RowSym, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator4 > &alpha, Vector< complex< double >, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 , class Allocator6 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop1, RowSym, Allocator1 > &A, Matrix< complex< double >, Prop2, RowSym, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator4 > &alpha, Vector< complex< double >, VectFull, Allocator5 > &beta, Matrix< complex< double >, Prop3, RowMajor, Allocator6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< float, Prop1, ColSym, Allocator1 > &A, Matrix< float, Prop2, ColSym, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop1, ColSym, Allocator1 > &A, Matrix< float, Prop2, ColSym, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, Matrix< float, General, ColMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< complex< float >, Prop1, ColSym, Allocator1 > &A, Matrix< complex< float >, Prop2, ColSym, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator4 > &alpha, Vector< complex< float >, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Alloc1 , class Alloc2 , class Alloc4 , class Alloc5 , class Alloc6 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop1, ColSym, Alloc1 > &A, Matrix< complex< float >, Prop2, ColSym, Alloc2 > &B, Vector< complex< float >, VectFull, Alloc4 > &alpha, Vector< complex< float >, VectFull, Alloc5 > &beta, Matrix< complex< float >, Prop3, ColMajor, Alloc6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< double, Prop1, ColSym, Allocator1 > &A, Matrix< double, Prop2, ColSym, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop1, ColSym, Allocator1 > &A, Matrix< double, Prop2, ColSym, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, Matrix< double, General, ColMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< complex< double >, Prop1, ColSym, Allocator1 > &A, Matrix< complex< double >, Prop2, ColSym, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator4 > &alpha, Vector< complex< double >, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Alloc1 , class Alloc2 , class Alloc4 , class Alloc5 , class Alloc6 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop1, ColSym, Alloc1 > &A, Matrix< complex< double >, Prop2, ColSym, Alloc2 > &B, Vector< complex< double >, VectFull, Alloc4 > &alpha, Vector< complex< double >, VectFull, Alloc5 > &beta, Matrix< complex< double >, Prop3, ColMajor, Alloc6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< complex< float >, Prop1, RowHerm, Allocator1 > &A, Matrix< complex< float >, Prop2, RowHerm, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop1, RowHerm, Allocator1 > &A, Matrix< complex< float >, Prop2, RowHerm, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, Matrix< complex< float >, General, RowMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< complex< double >, Prop1, RowHerm, Allocator1 > &A, Matrix< complex< double >, Prop2, RowHerm, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop1, RowHerm, Allocator1 > &A, Matrix< complex< double >, Prop2, RowHerm, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, Matrix< complex< double >, General, RowMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< complex< float >, Prop1, ColHerm, Allocator1 > &A, Matrix< complex< float >, Prop2, ColHerm, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop1, ColHerm, Allocator1 > &A, Matrix< complex< float >, Prop2, ColHerm, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, Matrix< complex< float >, General, ColMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< complex< double >, Prop1, ColHerm, Allocator1 > &A, Matrix< complex< double >, Prop2, ColHerm, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop1, ColHerm, Allocator1 > &A, Matrix< complex< double >, Prop2, ColHerm, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, Matrix< complex< double >, General, ColMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< float, Prop1, RowSymPacked, Allocator1 > &A, Matrix< float, Prop2, RowSymPacked, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop1, RowSymPacked, Allocator1 > &A, Matrix< float, Prop2, RowSymPacked, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, Matrix< float, General, RowMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvalues (Matrix< complex< float >, Prop1, RowSymPacked, Allocator1 > &A, Matrix< complex< float >, Prop2, RowSymPacked, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator3 > &alpha, Vector< complex< float >, VectFull, Allocator4 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop1, RowSymPacked, Allocator1 > &A, Matrix< complex< float >, Prop2, RowSymPacked, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator3 > &alpha, Vector< complex< float >, VectFull, Allocator4 > &beta, Matrix< complex< float >, General, RowMajor, Allocator5 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< double, Prop1, RowSymPacked, Allocator1 > &A, Matrix< double, Prop2, RowSymPacked, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop1, RowSymPacked, Allocator1 > &A, Matrix< double, Prop2, RowSymPacked, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, Matrix< double, General, RowMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvalues (Matrix< complex< double >, Prop1, RowSymPacked, Allocator1 > &A, Matrix< complex< double >, Prop2, RowSymPacked, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator3 > &alpha, Vector< complex< double >, VectFull, Allocator4 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop1, RowSymPacked, Allocator1 > &A, Matrix< complex< double >, Prop2, RowSymPacked, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator3 > &alpha, Vector< complex< double >, VectFull, Allocator4 > &beta, Matrix< complex< double >, General, RowMajor, Allocator5 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< float, Prop1, ColSymPacked, Allocator1 > &A, Matrix< float, Prop2, ColSymPacked, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop1, ColSymPacked, Allocator1 > &A, Matrix< float, Prop2, ColSymPacked, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, Matrix< float, General, ColMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvalues (Matrix< complex< float >, Prop1, ColSymPacked, Allocator1 > &A, Matrix< complex< float >, Prop2, ColSymPacked, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator3 > &alpha, Vector< complex< float >, VectFull, Allocator4 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop1, ColSymPacked, Allocator1 > &A, Matrix< complex< float >, Prop2, ColSymPacked, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator3 > &alpha, Vector< complex< float >, VectFull, Allocator4 > &beta, Matrix< complex< float >, General, ColMajor, Allocator5 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< double, Prop1, ColSymPacked, Allocator1 > &A, Matrix< double, Prop2, ColSymPacked, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop1, ColSymPacked, Allocator1 > &A, Matrix< double, Prop2, ColSymPacked, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, Matrix< double, General, ColMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvalues (Matrix< complex< double >, Prop1, ColSymPacked, Allocator1 > &A, Matrix< complex< double >, Prop2, ColSymPacked, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator3 > &alpha, Vector< complex< double >, VectFull, Allocator4 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop1, ColSymPacked, Allocator1 > &A, Matrix< complex< double >, Prop2, ColSymPacked, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator3 > &alpha, Vector< complex< double >, VectFull, Allocator4 > &beta, Matrix< complex< double >, General, ColMajor, Allocator5 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< complex< float >, Prop1, RowHermPacked, Allocator1 > &A, Matrix< complex< float >, Prop2, RowHermPacked, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop1, RowHermPacked, Allocator1 > &A, Matrix< complex< float >, Prop2, RowHermPacked, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, Matrix< complex< float >, General, RowMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< complex< double >, Prop1, RowHermPacked, Allocator1 > &A, Matrix< complex< double >, Prop2, RowHermPacked, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop1, RowHermPacked, Allocator1 > &A, Matrix< complex< double >, Prop2, RowHermPacked, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, Matrix< complex< double >, General, RowMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< complex< float >, Prop1, ColHermPacked, Allocator1 > &A, Matrix< complex< float >, Prop2, ColHermPacked, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop1, ColHermPacked, Allocator1 > &A, Matrix< complex< float >, Prop2, ColHermPacked, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &w, Matrix< complex< float >, General, ColMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 >
void GetEigenvalues (Matrix< complex< double >, Prop1, ColHermPacked, Allocator1 > &A, Matrix< complex< double >, Prop2, ColHermPacked, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop1, ColHermPacked, Allocator1 > &A, Matrix< complex< double >, Prop2, ColHermPacked, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &w, Matrix< complex< double >, General, ColMajor, Allocator4 > &z, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< float, Prop1, RowMajor, Allocator1 > &A, Matrix< float, Prop2, RowMajor, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &alpha_real, Vector< float, VectFull, Allocator4 > &alpha_imag, Vector< float, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 , class Allocator6 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop1, RowMajor, Allocator1 > &A, Matrix< float, Prop2, RowMajor, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &alpha_real, Vector< float, VectFull, Allocator4 > &alpha_imag, Vector< float, VectFull, Allocator5 > &beta, Matrix< float, Prop3, RowMajor, Allocator6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &A, Matrix< complex< float >, Prop2, RowMajor, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator4 > &alpha, Vector< complex< float >, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 , class Allocator6 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &A, Matrix< complex< float >, Prop2, RowMajor, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator4 > &alpha, Vector< complex< float >, VectFull, Allocator5 > &beta, Matrix< complex< float >, Prop3, RowMajor, Allocator6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< double, Prop1, RowMajor, Allocator1 > &A, Matrix< double, Prop2, RowMajor, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &alpha_real, Vector< double, VectFull, Allocator4 > &alpha_imag, Vector< double, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 , class Allocator6 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop1, RowMajor, Allocator1 > &A, Matrix< double, Prop2, RowMajor, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &alpha_real, Vector< double, VectFull, Allocator4 > &alpha_imag, Vector< double, VectFull, Allocator5 > &beta, Matrix< double, Prop3, RowMajor, Allocator6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &A, Matrix< complex< double >, Prop2, RowMajor, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator4 > &alpha, Vector< complex< double >, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 , class Allocator6 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &A, Matrix< complex< double >, Prop2, RowMajor, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator4 > &alpha, Vector< complex< double >, VectFull, Allocator5 > &beta, Matrix< complex< double >, Prop3, RowMajor, Allocator6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< float, Prop1, ColMajor, Allocator1 > &A, Matrix< float, Prop2, ColMajor, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &alpha_real, Vector< float, VectFull, Allocator4 > &alpha_imag, Vector< float, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 , class Allocator6 >
void GetEigenvaluesEigenvectors (Matrix< float, Prop1, ColMajor, Allocator1 > &A, Matrix< float, Prop2, ColMajor, Allocator2 > &B, Vector< float, VectFull, Allocator3 > &alpha_real, Vector< float, VectFull, Allocator4 > &alpha_imag, Vector< float, VectFull, Allocator5 > &beta, Matrix< float, Prop3, ColMajor, Allocator6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &A, Matrix< complex< float >, Prop2, ColMajor, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator4 > &alpha, Vector< complex< float >, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 , class Allocator6 >
void GetEigenvaluesEigenvectors (Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &A, Matrix< complex< float >, Prop2, ColMajor, Allocator2 > &B, Vector< complex< float >, VectFull, Allocator4 > &alpha, Vector< complex< float >, VectFull, Allocator5 > &beta, Matrix< complex< float >, Prop3, ColMajor, Allocator6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< double, Prop1, ColMajor, Allocator1 > &A, Matrix< double, Prop2, ColMajor, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &alpha_real, Vector< double, VectFull, Allocator4 > &alpha_imag, Vector< double, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 , class Allocator5 , class Allocator6 >
void GetEigenvaluesEigenvectors (Matrix< double, Prop1, ColMajor, Allocator1 > &A, Matrix< double, Prop2, ColMajor, Allocator2 > &B, Vector< double, VectFull, Allocator3 > &alpha_real, Vector< double, VectFull, Allocator4 > &alpha_imag, Vector< double, VectFull, Allocator5 > &beta, Matrix< double, Prop3, ColMajor, Allocator6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 >
void GetEigenvalues (Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &A, Matrix< complex< double >, Prop2, ColMajor, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator4 > &alpha, Vector< complex< double >, VectFull, Allocator5 > &beta, LapackInfo &info=lapack_info)
template<class Prop1 , class Prop2 , class Prop3 , class Allocator1 , class Allocator2 , class Allocator4 , class Allocator5 , class Allocator6 >
void GetEigenvaluesEigenvectors (Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &A, Matrix< complex< double >, Prop2, ColMajor, Allocator2 > &B, Vector< complex< double >, VectFull, Allocator4 > &alpha, Vector< complex< double >, VectFull, Allocator5 > &beta, Matrix< complex< double >, Prop3, ColMajor, Allocator6 > &V, LapackInfo &info=lapack_info)
template<class Prop1 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetSVD (Matrix< float, Prop1, RowMajor, Allocator1 > &A, Vector< float, VectFull, Allocator4 > &lambda, Matrix< float, General, RowMajor, Allocator2 > &u, Matrix< float, General, RowMajor, Allocator3 > &v, LapackInfo &info=lapack_info)
template<class Prop1 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetSVD (Matrix< complex< float >, Prop1, RowMajor, Allocator1 > &A, Vector< float, VectFull, Allocator4 > &lambda, Matrix< complex< float >, General, RowMajor, Allocator2 > &u, Matrix< complex< float >, General, RowMajor, Allocator3 > &v, LapackInfo &info=lapack_info)
template<class Prop1 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetSVD (Matrix< double, Prop1, RowMajor, Allocator1 > &A, Vector< double, VectFull, Allocator4 > &lambda, Matrix< double, General, RowMajor, Allocator2 > &u, Matrix< double, General, RowMajor, Allocator3 > &v, LapackInfo &info=lapack_info)
template<class Prop1 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetSVD (Matrix< complex< double >, Prop1, RowMajor, Allocator1 > &A, Vector< double, VectFull, Allocator4 > &lambda, Matrix< complex< double >, General, RowMajor, Allocator2 > &u, Matrix< complex< double >, General, RowMajor, Allocator3 > &v, LapackInfo &info=lapack_info)
template<class Prop1 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetSVD (Matrix< float, Prop1, ColMajor, Allocator1 > &A, Vector< float, VectFull, Allocator4 > &lambda, Matrix< float, General, ColMajor, Allocator2 > &u, Matrix< float, General, ColMajor, Allocator3 > &v, LapackInfo &info=lapack_info)
template<class Prop1 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetSVD (Matrix< complex< float >, Prop1, ColMajor, Allocator1 > &A, Vector< float, VectFull, Allocator4 > &lambda, Matrix< complex< float >, General, ColMajor, Allocator2 > &u, Matrix< complex< float >, General, ColMajor, Allocator3 > &v, LapackInfo &info=lapack_info)
template<class Prop1 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetSVD (Matrix< double, Prop1, ColMajor, Allocator1 > &A, Vector< double, VectFull, Allocator4 > &lambda, Matrix< double, General, ColMajor, Allocator2 > &u, Matrix< double, General, ColMajor, Allocator3 > &v, LapackInfo &info=lapack_info)
template<class Prop1 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void GetSVD (Matrix< complex< double >, Prop1, ColMajor, Allocator1 > &A, Vector< double, VectFull, Allocator4 > &sigma, Matrix< complex< double >, General, ColMajor, Allocator2 > &u, Matrix< complex< double >, General, ColMajor, Allocator3 > &v, LapackInfo &info=lapack_info)
template<class Prop1 , class Allocator1 >
void GetPseudoInverse (Matrix< double, Prop1, ColMajor, Allocator1 > &A, double epsilon, LapackInfo &info=lapack_info)
void GetHessenberg (Matrix< complex< double >, General, ColMajor > &A, Matrix< complex< double >, General, ColMajor > &B, Matrix< complex< double >, General, ColMajor > &Q, Matrix< complex< double >, General, ColMajor > &Z)
void GetQZ (Matrix< complex< double >, General, ColMajor > &A, Matrix< complex< double >, General, ColMajor > &B, Matrix< complex< double >, General, ColMajor > &Q, Matrix< complex< double >, General, ColMajor > &Z)
void GetHessenberg (Matrix< complex< double >, General, RowMajor > &A, Matrix< complex< double >, General, RowMajor > &B, Matrix< complex< double >, General, RowMajor > &Q, Matrix< complex< double >, General, RowMajor > &Z)
void GetQZ (Matrix< complex< double >, General, RowMajor > &A, Matrix< complex< double >, General, RowMajor > &B, Matrix< complex< double >, General, RowMajor > &Q, Matrix< complex< double >, General, RowMajor > &Z)
template<class T , class Prop , class Storage , class Allocator , class Vector1 >
void SolveHessenberg (Matrix< T, Prop, Storage, Allocator > &A, Vector1 &B)
 Gaussian elimination to solve A X = B with A an Hessenberg matrix.
template<class T , class Prop , class Storage , class Allocator , class Vector1 >
void SolveHessenbergTwo (Matrix< T, Prop, Storage, Allocator > &A, Vector1 &B)
 Gaussian elimination to solve A X = B with A matrix so that a_ij = 0 for i > j+2.
template<class Prop , class Storage , class Allocator >
void SolveSylvester (Matrix< complex< double >, Prop, Storage, Allocator > &A, Matrix< complex< double >, Prop, Storage, Allocator > &B, Matrix< complex< double >, Prop, Storage, Allocator > &C, Matrix< complex< double >, Prop, Storage, Allocator > &D, Matrix< complex< double >, Prop, Storage, Allocator > &E)
 Solves A X B^H + C X D^H = E, E is overwritten with result X. A, B, C and D are modified.
void GetHessenberg (Matrix< double, General, ColMajor > &A, Matrix< double, General, ColMajor > &B, Matrix< double, General, ColMajor > &Q, Matrix< double, General, ColMajor > &Z)
void GetQZ (Matrix< double, General, ColMajor > &A, Matrix< double, General, ColMajor > &B, Matrix< double, General, ColMajor > &Q, Matrix< double, General, ColMajor > &Z)
void GetHessenberg (Matrix< double, General, RowMajor > &A, Matrix< double, General, RowMajor > &B, Matrix< double, General, RowMajor > &Q, Matrix< double, General, RowMajor > &Z)
void GetQZ (Matrix< double, General, RowMajor > &A, Matrix< double, General, RowMajor > &B, Matrix< double, General, RowMajor > &Q, Matrix< double, General, RowMajor > &Z)
template<class Prop , class Storage , class Allocator >
void SolveSylvester (Matrix< double, Prop, Storage, Allocator > &A, Matrix< double, Prop, Storage, Allocator > &B, Matrix< double, Prop, Storage, Allocator > &C, Matrix< double, Prop, Storage, Allocator > &D, Matrix< double, Prop, Storage, Allocator > &E)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetQR (Matrix< float, Prop0, ColMajor, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetQR (Matrix< double, Prop0, ColMajor, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetQR (Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetQR (Matrix< float, Prop0, RowMajor, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetQR (Matrix< double, Prop0, RowMajor, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetQR (Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetQR_Pivot (Matrix< double, Prop0, ColMajor, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &tau, Vector< int > &ipivot, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetQ_FromQR (Matrix< double, Prop0, ColMajor, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetQ_FromQR (Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Side , class Trans >
void MltQ_FromQR (const Side &side, const Trans &trans, Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &tau, Matrix< complex< double >, Prop0, ColMajor, Allocator2 > &C, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLQ (Matrix< float, Prop0, ColMajor, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLQ (Matrix< double, Prop0, ColMajor, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLQ (Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLQ (Matrix< float, Prop0, RowMajor, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLQ (Matrix< double, Prop0, RowMajor, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLQ (Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &tau, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class IsTranspose >
void MltQ_FromQR (Matrix< double, Prop0, ColMajor, Allocator0 > &A, const IsTranspose &trans, Vector< double, VectFull, Allocator1 > &tau, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveQR (const Matrix< float, Prop0, ColMajor, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &tau, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveQR (const Matrix< double, Prop0, ColMajor, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &tau, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveQR (const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &tau, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveQR (const Matrix< float, Prop0, RowMajor, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &tau, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveQR (const Matrix< double, Prop0, RowMajor, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &tau, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveQR (const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &tau, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLQ (const Matrix< float, Prop0, ColMajor, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &tau, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLQ (const Matrix< double, Prop0, ColMajor, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &tau, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLQ (const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &tau, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLQ (const Matrix< float, Prop0, RowMajor, Allocator0 > &A, const Vector< float, VectFull, Allocator1 > &tau, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLQ (const Matrix< double, Prop0, RowMajor, Allocator0 > &A, const Vector< double, VectFull, Allocator1 > &tau, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLQ (const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, const Vector< complex< double >, VectFull, Allocator1 > &tau, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< float, Prop0, ColMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< double, Prop0, ColMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< float, Prop0, RowMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< double, Prop0, RowMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< float, Prop0, ColSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< double, Prop0, ColSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< float >, Prop0, ColSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< double >, Prop0, ColSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< float, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< double, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< float >, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< double >, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (SeldonUplo Uplo, Matrix< float, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (SeldonUplo Uplo, Matrix< double, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (SeldonUplo Uplo, Matrix< complex< float >, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (SeldonUplo Uplo, Matrix< complex< double >, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< float, Prop0, RowSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< double, Prop0, RowSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< float >, Prop0, RowSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< double >, Prop0, RowSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< float, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< double, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< float >, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< double >, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (SeldonUplo Uplo, Matrix< float, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (SeldonUplo Uplo, Matrix< double, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (SeldonUplo Uplo, Matrix< complex< float >, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (SeldonUplo Uplo, Matrix< complex< double >, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< float >, Prop0, ColHerm, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< double >, Prop0, ColHerm, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< float >, Prop0, ColHermPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< double >, Prop0, ColHermPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< float >, Prop0, RowHerm, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< double >, Prop0, RowHerm, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< float >, Prop0, RowHermPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
void GetLU (Matrix< complex< double >, Prop0, RowHermPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, ColMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, ColMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const Matrix< float, Prop0, ColMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const Matrix< double, Prop0, ColMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, RowMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, RowMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const Matrix< float, Prop0, RowMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const Matrix< double, Prop0, RowMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, ColSym, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, ColSym, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, ColSym, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, ColSym, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, ColSymPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, ColSymPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, ColSymPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, ColSymPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, RowSym, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, RowSym, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, RowSym, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, RowSym, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, RowSymPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, RowSymPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, RowSymPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, RowSymPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, ColHerm, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, ColHerm, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, ColHermPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, ColHermPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, RowHerm, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, RowHerm, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, RowHermPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, RowHermPacked, Allocator0 > &A, const Vector< int, VectFull, Allocator1 > &P, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator2 >
void SolveLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, ColMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, ColMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, RowMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, RowMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, ColSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, ColSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, ColSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, ColSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, ColSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, RowSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, RowSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, RowSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, RowSym, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, RowSymPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, ColHerm, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, ColHerm, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, ColHermPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, ColHermPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, RowHerm, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, RowHerm, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, RowHermPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, float anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, RowHermPacked, Allocator0 > &A, Vector< int, VectFull, Allocator1 > &P, SeldonNorm norm, double anorm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
float ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
double ReciprocalConditionNumber (const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, SeldonNorm norm, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< float, Prop0, ColMajor, Allocator0 > &A, const Matrix< float, Prop0, ColMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< float, VectFull, Allocator3 > &x, const Vector< float, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< double, Prop0, ColMajor, Allocator0 > &A, const Matrix< double, Prop0, ColMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< double, VectFull, Allocator3 > &x, const Vector< double, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, const Matrix< complex< float >, Prop0, ColMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, const Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, const Matrix< complex< double >, Prop0, ColMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, const Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const SeldonTranspose &TransA, const Matrix< float, Prop0, ColMajor, Allocator0 > &A, const Matrix< float, Prop0, ColMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< float, VectFull, Allocator3 > &x, const Vector< float, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const SeldonTranspose &TransA, const Matrix< double, Prop0, ColMajor, Allocator0 > &A, const Matrix< double, Prop0, ColMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< double, VectFull, Allocator3 > &x, const Vector< double, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const SeldonTranspose &TransA, const Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, const Matrix< complex< float >, Prop0, ColMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, const Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const SeldonTranspose &TransA, const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, const Matrix< complex< double >, Prop0, ColMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, const Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< float, Prop0, RowMajor, Allocator0 > &A, const Matrix< float, Prop0, RowMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< float, VectFull, Allocator3 > &x, const Vector< float, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< double, Prop0, RowMajor, Allocator0 > &A, const Matrix< double, Prop0, RowMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< double, VectFull, Allocator3 > &x, const Vector< double, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, const Matrix< complex< float >, Prop0, RowMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, const Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, const Matrix< complex< double >, Prop0, RowMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, const Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const SeldonTranspose &TransA, const Matrix< float, Prop0, RowMajor, Allocator0 > &A, const Matrix< float, Prop0, RowMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< float, VectFull, Allocator3 > &x, const Vector< float, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const SeldonTranspose &TransA, const Matrix< double, Prop0, RowMajor, Allocator0 > &A, const Matrix< double, Prop0, RowMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< double, VectFull, Allocator3 > &x, const Vector< double, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const SeldonTranspose &TransA, const Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, const Matrix< complex< float >, Prop0, RowMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const SeldonTranspose &TransA, const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, const Matrix< complex< double >, Prop0, RowMajor, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< float, Prop0, ColSym, Allocator0 > &A, const Matrix< float, Prop0, ColSym, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< float, VectFull, Allocator3 > &x, const Vector< float, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< double, Prop0, ColSym, Allocator0 > &A, const Matrix< double, Prop0, ColSym, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< double, VectFull, Allocator3 > &x, const Vector< double, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, ColSym, Allocator0 > &A, const Matrix< complex< float >, Prop0, ColSym, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, const Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, ColSym, Allocator0 > &A, const Matrix< complex< double >, Prop0, ColSym, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, const Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< float, Prop0, ColSymPacked, Allocator0 > &A, const Matrix< float, Prop0, ColSymPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< float, VectFull, Allocator3 > &x, const Vector< float, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< double, Prop0, ColSymPacked, Allocator0 > &A, const Matrix< double, Prop0, ColSymPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< double, VectFull, Allocator3 > &x, const Vector< double, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, ColSymPacked, Allocator0 > &A, const Matrix< complex< float >, Prop0, ColSymPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, const Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, ColSymPacked, Allocator0 > &A, const Matrix< complex< double >, Prop0, ColSymPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, const Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< float, Prop0, RowSym, Allocator0 > &A, const Matrix< float, Prop0, RowSym, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< float, VectFull, Allocator3 > &x, const Vector< float, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< double, Prop0, RowSym, Allocator0 > &A, const Matrix< double, Prop0, RowSym, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< double, VectFull, Allocator3 > &x, const Vector< double, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, RowSym, Allocator0 > &A, const Matrix< complex< float >, Prop0, RowSym, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, const Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, RowSym, Allocator0 > &A, const Matrix< complex< double >, Prop0, RowSym, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, const Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< float, Prop0, RowSymPacked, Allocator0 > &A, const Matrix< float, Prop0, RowSymPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< float, VectFull, Allocator3 > &x, const Vector< float, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< double, Prop0, RowSymPacked, Allocator0 > &A, const Matrix< double, Prop0, RowSymPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< double, VectFull, Allocator3 > &x, const Vector< double, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, RowSymPacked, Allocator0 > &A, const Matrix< complex< float >, Prop0, RowSymPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, const Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, RowSymPacked, Allocator0 > &A, const Matrix< complex< double >, Prop0, RowSymPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, const Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, ColHerm, Allocator0 > &A, const Matrix< complex< float >, Prop0, ColHerm, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, const Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, ColHerm, Allocator0 > &A, const Matrix< complex< double >, Prop0, ColHerm, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, const Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, ColHermPacked, Allocator0 > &A, const Matrix< complex< float >, Prop0, ColHermPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, const Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, ColHermPacked, Allocator0 > &A, const Matrix< complex< double >, Prop0, ColHermPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, const Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, RowHerm, Allocator0 > &A, const Matrix< complex< float >, Prop0, RowHerm, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, RowHerm, Allocator0 > &A, const Matrix< complex< double >, Prop0, RowHerm, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, RowHermPacked, Allocator0 > &A, const Matrix< complex< float >, Prop0, RowHermPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< float >, VectFull, Allocator3 > &x, Vector< complex< float >, VectFull, Allocator4 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 , class Allocator3 , class Allocator4 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, RowHermPacked, Allocator0 > &A, const Matrix< complex< double >, Prop0, RowHermPacked, Allocator1 > &Alu, const Vector< int, VectFull, Allocator2 > &P, Vector< complex< double >, VectFull, Allocator3 > &x, Vector< complex< double >, VectFull, Allocator4 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, const Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, const Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &x, const Vector< float, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &x, const Vector< double, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< float >, VectFull, Allocator1 > &x, Vector< complex< float >, VectFull, Allocator2 > &b, float &ferr, float &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void RefineSolutionLU (const SeldonTranspose &TransA, const SeldonDiag &DiagA, const Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, Vector< complex< double >, VectFull, Allocator1 > &x, Vector< complex< double >, VectFull, Allocator2 > &b, double &ferr, double &berr, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, ColMajor, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, ColMajor, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, RowMajor, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, RowMajor, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, ColSym, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, ColSym, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, ColSym, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, ColSym, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, ColSymPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, ColSymPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, ColSymPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, ColSymPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, RowSym, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, RowSym, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, RowSym, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, RowSym, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, RowSymPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, RowSymPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, RowSymPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, RowSymPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, ColHerm, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, ColHerm, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, ColHermPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, ColHermPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, RowHerm, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, RowHerm, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, RowHermPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, RowHermPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< float, Prop0, ColUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< double, Prop0, ColUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< float >, Prop0, ColUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< double >, Prop0, ColUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< float, Prop0, ColLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< double, Prop0, ColLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< float >, Prop0, ColLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< double >, Prop0, ColLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< float, Prop0, ColUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< double, Prop0, ColUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< float >, Prop0, ColUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< double >, Prop0, ColUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< float, Prop0, ColLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< double, Prop0, ColLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< float >, Prop0, ColLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< double >, Prop0, ColLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< float, Prop0, RowUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< double, Prop0, RowUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< float >, Prop0, RowUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< double >, Prop0, RowUpTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< float, Prop0, RowLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< double, Prop0, RowLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< float >, Prop0, RowLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< double >, Prop0, RowLoTriang, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< float, Prop0, RowUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< double, Prop0, RowUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< float >, Prop0, RowUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< double >, Prop0, RowUpTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< float, Prop0, RowLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< double, Prop0, RowLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< float >, Prop0, RowLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 >
void GetInverse (const SeldonDiag &DiagA, Matrix< complex< double >, Prop0, RowLoTriangPacked, Allocator0 > &A, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void GetScalingFactors (const Matrix< float, Prop0, ColMajor, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &row_scale, Vector< float, VectFull, Allocator2 > &col_scale, float &row_condition_number, float &col_condition_number, float &amax, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void GetScalingFactors (const Matrix< double, Prop0, ColMajor, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &row_scale, Vector< double, VectFull, Allocator2 > &col_scale, double &row_condition_number, double &col_condition_number, double &amax, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void GetScalingFactors (const Matrix< complex< float >, Prop0, ColMajor, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &row_scale, Vector< float, VectFull, Allocator2 > &col_scale, float &row_condition_number, float &col_condition_number, float &amax, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void GetScalingFactors (const Matrix< complex< double >, Prop0, ColMajor, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &row_scale, Vector< double, VectFull, Allocator2 > &col_scale, double &row_condition_number, double &col_condition_number, double &amax, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void GetScalingFactors (const Matrix< float, Prop0, RowMajor, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &row_scale, Vector< float, VectFull, Allocator2 > &col_scale, float &row_condition_number, float &col_condition_number, float &amax, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void GetScalingFactors (const Matrix< double, Prop0, RowMajor, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &row_scale, Vector< double, VectFull, Allocator2 > &col_scale, double &row_condition_number, double &col_condition_number, double &amax, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void GetScalingFactors (const Matrix< complex< float >, Prop0, RowMajor, Allocator0 > &A, Vector< float, VectFull, Allocator1 > &row_scale, Vector< float, VectFull, Allocator2 > &col_scale, float &row_condition_number, float &col_condition_number, float &amax, LapackInfo &info=lapack_info)
template<class Prop0 , class Allocator0 , class Allocator1 , class Allocator2 >
void GetScalingFactors (const Matrix< complex< double >, Prop0, RowMajor, Allocator0 > &A, Vector< double, VectFull, Allocator1 > &row_scale, Vector< double, VectFull, Allocator2 > &col_scale, double &row_condition_number, double &col_condition_number, double &amax, LapackInfo &info=lapack_info)
template<class Prop , class Allocator >
void GetCholesky (Matrix< double, Prop, RowSymPacked, Allocator > &A, LapackInfo &info=lapack_info)
template<class Prop , class Allocator >
void GetCholesky (Matrix< double, Prop, ColSymPacked, Allocator > &A, LapackInfo &info=lapack_info)
template<class Transp , class Prop , class Allocator , class Allocator2 >
void SolveCholesky (const Transp &TransA, const Matrix< double, Prop, RowSymPacked, Allocator > &A, Vector< double, VectFull, Allocator2 > &X, LapackInfo &info=lapack_info)
template<class Transp , class Prop , class Allocator , class Allocator2 >
void SolveCholesky (const Transp &TransA, const Matrix< double, Prop, ColSymPacked, Allocator > &A, Vector< double, VectFull, Allocator2 > &X, LapackInfo &info=lapack_info)
template<class Transp , class Prop , class Allocator , class Allocator2 >
void MltCholesky (const Transp &TransA, const Matrix< double, Prop, RowSymPacked, Allocator > &A, Vector< double, VectFull, Allocator2 > &X, LapackInfo &info=lapack_info)
template<class Transp , class Prop , class Allocator , class Allocator2 >
void MltCholesky (const Transp &TransA, const Matrix< double, Prop, ColSymPacked, Allocator > &A, Vector< double, VectFull, Allocator2 > &X, LapackInfo &info=lapack_info)
template<class T , class Prop , class Storage , class Allocator , class Allocator1 , class Allocator2 >
void GetAndSolveLU (Matrix< T, Prop, Storage, Allocator > &A, Vector< int, VectFull, Allocator1 > &P, Vector< T, VectFull, Allocator2 > &b, LapackInfo &info=lapack_info)
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int BiCg (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves a linear system by using BiConjugate Gradient (BICG).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int BiCgcr (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves a linear system by using BiCgCr.
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int BiCgStab (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Implements BiConjugate Gradient Stabilized (BICG-STAB).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int BiCgStabl (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Implements BiConjugate Gradient Stabilized (BICG-STAB(l)).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Cg (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves a linear system by using Conjugate Gradient (CG).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Cgne (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves a linear system using Conjugate Gradient Normal Equation (CGNE).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Cgs (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves linear system using Conjugate Gradient Squared (CGS).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int CoCg (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves a linear system by using Conjugate Orthogonal Conjugate Gradient.
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Gcr (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &outer)
 Solves a linear system by using Generalized Conjugate Residual (GCR).
template<class Titer , class MatrixSparse , class Vector1 , class Preconditioner >
int Gmres (MatrixSparse &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &outer)
 Solves a linear system by using Generalized Minimum Residual (GMRES).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Lsqr (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves a linear system by using Least Squares (LSQR).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int MinRes (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves a linear system by using Minimum Residual (MinRes).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int QCgs (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves linear system using Quasi-minimized Conjugate Gradient Squared.
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Qmr (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves a linear system by using Quasi-Minimal Residual (QMR).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int QmrSym (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves linear system using Symmetric Quasi-Minimal Residual (SQMR).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Symmlq (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves a linear system by using Symmetric LQ (SymmLQ).
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int TfQmr (Matrix1 &A, Vector1 &x, const Vector1 &b, Preconditioner &M, Iteration< Titer > &iter)
 Solves a linear system by using Transpose Free Quasi-Minimal Residual.
template<class real , class cplx , class Storage , class Allocator >
void qsplit_ilut (Vector< cplx, Storage, Allocator > &a, IVect &ind, int first, int n, int ncut, const real &abs_ncut)
template<class real , class cplx , class Allocator1 , class Allocator2 >
void GetIlut (const IlutPreconditioning< real, cplx, Allocator1 > &param, Matrix< cplx, General, ArrayRowSparse, Allocator2 > &A, IVect &iperm, IVect &rperm)
 Incomplete factorization with pivot for unsymmetric matrix.
template<class cplx , class Allocator >
void GetIluk (int lfil, Matrix< cplx, General, ArrayRowSparse, Allocator > &A)
template<class cplx , class Allocator >
void GetIlu0 (Matrix< cplx, General, ArrayRowSparse, Allocator > &A)
template<class cplx , class Allocator >
void GetMilu0 (Matrix< cplx, General, ArrayRowSparse, Allocator > &A)
template<class real , class cplx , class Allocator , class Storage2 , class Allocator2 >
void SolveLU (const Matrix< real, General, ArrayRowSparse, Allocator > &A, Vector< cplx, Storage2, Allocator2 > &x)
 Resolution of LU y = x (x is overwritten with y).
template<class cplx , class Allocator , class Storage2 , class Allocator2 >
void SolveLU (const class_SeldonTrans &transA, const Matrix< cplx, General, ArrayRowSparse, Allocator > &A, Vector< cplx, Storage2, Allocator2 > &x)
template<class real , class cplx , class Allocator1 , class Allocator2 >
void GetIlut (const IlutPreconditioning< real, cplx, Allocator1 > &param, Matrix< cplx, Symmetric, ArrayRowSymSparse, Allocator2 > &A)
 Incomplete Factorization without pivot for symmetric matrix.
template<class cplx , class Allocator >
void GetIluk (int lfil, Matrix< cplx, Symmetric, ArrayRowSymSparse, Allocator > &A)
template<class cplx , class Allocator >
void GetIlu0 (Matrix< cplx, Symmetric, ArrayRowSymSparse, Allocator > &A)
template<class cplx , class Allocator >
void GetMilu0 (Matrix< cplx, Symmetric, ArrayRowSymSparse, Allocator > &A)
template<class real , class cplx , class Allocator , class Storage2 , class Allocator2 >
void SolveLU (const Matrix< real, Symmetric, ArrayRowSymSparse, Allocator > &A, Vector< cplx, Storage2, Allocator2 > &x)
 Resolution of L D L^t y = x (result is overwritten in x).
template<class T , class Prop , class Allocator >
void GetCholesky (Matrix< T, Prop, ArrayRowSymSparse, Allocator > &A)
 Implementation of Cholesky factorization for sparse symmetric matrix.
template<class classTrans , class T0 , class T1 , class Prop , class Storage , class Allocator1 , class Allocator2 >
void SolveCholesky (const classTrans &TransA, const Matrix< T0, Prop, ArrayRowSymSparse, Allocator1 > &A, Vector< T1, Storage, Allocator2 > &x)
template<class classTrans , class T0 , class T1 , class Prop , class Storage , class Allocator1 , class Allocator2 >
void MltCholesky (const classTrans &TransA, const Matrix< T0, Prop, ArrayRowSymSparse, Allocator1 > &A, Vector< T1, Storage, Allocator2 > &x)
SELDON_EXTERN template std::string to_str< int > (const int &)
SELDON_EXTERN template std::string to_str< float > (const float &)
SELDON_EXTERN template std::string to_str< double > (const double &)
SELDON_EXTERN template std::string to_str< complex< float > > (const complex< float > &)
SELDON_EXTERN template std::string to_str< complex< double > > (const complex< double > &)
SELDON_EXTERN template void to_num (std::string, int &)
SELDON_EXTERN template void to_num (std::string, float &)
SELDON_EXTERN template void to_num (std::string, double &)
SELDON_EXTERN template void to_num (std::string, complex< float > &)
SELDON_EXTERN template void to_num (std::string, complex< double > &)
SELDON_EXTERN template int to_num< int > (std::string)
SELDON_EXTERN template float to_num< float > (std::string)
SELDON_EXTERN template double to_num< double > (std::string)
SELDON_EXTERN template complex
< float > 
to_num< complex< float > > (std::string)
SELDON_EXTERN template complex
< double > 
to_num< complex< double > > (std::string)
SELDON_EXTERN template void SetComplexZero (@scalar &)
SELDON_EXTERN template void SetComplexOne (@scalar &)
SELDON_EXTERN template ostream & operator<< (ostream &, const Matrix<@complex, General,@storage_blasHE, MallocAlloc<@complex > > &)
SELDON_EXTERN template ostream & operator<< (ostream &, const Matrix<@real_complex, General,@storage_blasSY, MallocAlloc<@real_complex > > &)
SELDON_EXTERN template ostream & operator<< (ostream &, const Matrix<@real_complex, General,@storage_blasTR, MallocAlloc<@real_complex > > &)
SELDON_EXTERN template ostream & operator<< (ostream &, const Matrix<@complex, General,@storage_blasHP, MallocAlloc<@complex > > &)
SELDON_EXTERN template ostream & operator<< (ostream &, const Matrix<@real_complex, General,@storage_blasSP, MallocAlloc<@real_complex > > &)
SELDON_EXTERN template ostream & operator<< (ostream &, const Matrix<@real_complex, General,@storage_blasTP, MallocAlloc<@real_complex > > &)
SELDON_EXTERN template ostream & operator<< (ostream &, const Matrix<@scalar, General,@storage_blasGE, MallocAlloc<@scalar > > &)
const int & max (const int &a, const int &b)
const float & max (const float &a, const float &b)
const double & max (const double &a, const double &b)
const complex< float > & max (const complex< float > &a, const complex< float > &b)
const complex< double > & max (const complex< double > &a, const complex< double > &b)
SELDON_EXTERN template ostream & operator<< (ostream &out, const Vector<@scalar, VectFull, MallocAlloc<@scalar > > &V)
template<class T0 , class Allocator0 , class T1 , class Allocator1 >
void GetRow (const Matrix< T0, General, RowSparse, Allocator0 > &M, int i, Vector< T1, Vect_Sparse, Allocator1 > &X)
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void GetRow (const Matrix< T0, Prop0, Storage0, Allocator0 > &M, int i, Vector< T1, Storage1, Allocator1 > &X)
template<class T0 , class Allocator0 , class T1 , class Allocator1 >
void GetCol (const Matrix< T0, General, RowSparse, Allocator0 > &M, int j, Vector< T1, Vect_Sparse, Allocator1 > &X)
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void GetCol (const Matrix< T0, Prop0, Storage0, Allocator0 > &M, int j, Vector< T1, Storage1, Allocator1 > &X)
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void SetRow (const Vector< T1, Storage1, Allocator1 > &X, int i, Matrix< T0, Prop0, Storage0, Allocator0 > &M)
template<class T0 , class Allocator0 , class T1 , class Allocator1 >
void SetRow (const Vector< T1, Vect_Sparse, Allocator1 > &X, int i, Matrix< T0, General, RowSparse, Allocator0 > &M)
template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void SetCol (const Vector< T1, Storage1, Allocator1 > &X, int j, Matrix< T0, Prop0, Storage0, Allocator0 > &M)
template<class T0 , class Allocator0 , class T1 , class Allocator1 >
void SetCol (const Vector< T1, VectSparse, Allocator1 > &X, int j, Matrix< T0, General, RowSparse, Allocator0 > &M)
template<class T , class Prop , class Allocator >
void ApplyPermutation (Matrix< T, Prop, RowMajor, Allocator > &A, const Vector< int > &row_perm, const Vector< int > &col_perm, int starting_index)
 Permutation of a general matrix stored by rows.
template<class T , class Prop , class Allocator >
void ApplyPermutation (Matrix< T, Prop, ColMajor, Allocator > &A, const Vector< int > &row_perm, const Vector< int > &col_perm, int starting_index)
 Permutation of a general matrix stored by columns.
template<class T , class Prop , class Allocator >
void ApplyInversePermutation (Matrix< T, Prop, RowMajor, Allocator > &A, const Vector< int > &row_perm, const Vector< int > &col_perm, int starting_index)
 Inverse permutation of a general matrix stored by rows.
template<class T , class Prop , class Allocator >
void ApplyInversePermutation (Matrix< T, Prop, ColMajor, Allocator > &A, const Vector< int > &row_perm, const Vector< int > &col_perm, int starting_index)
 Inverse permutation of a general matrix stored by columns.
template<class T , class Prop , class Storage , class Allocator >
ostream & operator<< (ostream &out, const Matrix< T, Prop, Storage, Allocator > &A)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const Matrix< T1, Symmetric, ArrayRowSymComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const class_SeldonNoTrans &Trans, const Matrix< T1, Symmetric, ArrayRowSymComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const class_SeldonTrans &Trans, const Matrix< T1, Symmetric, ArrayRowSymComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const class_SeldonConjTrans &Trans, const Matrix< T1, Symmetric, ArrayRowSymComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const Matrix< T1, General, ArrayRowComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const class_SeldonNoTrans &Trans, const Matrix< T1, General, ArrayRowComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const class_SeldonTrans &Trans, const Matrix< T1, General, ArrayRowComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const class_SeldonConjTrans &Trans, const Matrix< T1, General, ArrayRowComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const Matrix< T1, Symmetric, ArrayRowSymSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const class_SeldonNoTrans &Trans, const Matrix< T1, Symmetric, ArrayRowSymSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const class_SeldonTrans &Trans, const Matrix< T1, Symmetric, ArrayRowSymSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const Matrix< T1, General, ArrayRowSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const class_SeldonNoTrans &Trans, const Matrix< T1, General, ArrayRowSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T4, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class T4 , class Allocator1 , class Allocator2 , class Allocator3 >
void MltAdd (const T0 &alpha, const class_SeldonTrans &Trans, const Matrix< T1, General, ArrayRowSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &B, const T4 &beta, Vector< T3, VectFull, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class Allocator1 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, General, ArrayRowSparse, Allocator1 > &A, Matrix< T2, General, ArrayRowSparse, Allocator2 > &B)
template<class T0 , class T1 , class T2 , class Allocator1 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, Symmetric, ArrayRowSymSparse, Allocator1 > &A, Matrix< T2, Symmetric, ArrayRowSymSparse, Allocator2 > &B)
template<class T0 , class T1 , class T2 , class Allocator1 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, Symmetric, ArrayRowSymComplexSparse, Allocator1 > &A, Matrix< T2, Symmetric, ArrayRowSymComplexSparse, Allocator2 > &B)
template<class T0 , class T1 , class T2 , class Allocator1 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, Symmetric, ArrayRowSymComplexSparse, Allocator1 > &A, Matrix< T2, Symmetric, ArrayRowSymSparse, Allocator2 > &B)
template<class T0 , class T1 , class T2 , class Allocator1 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, General, ArrayRowComplexSparse, Allocator1 > &A, Matrix< T2, Symmetric, ArrayRowSparse, Allocator2 > &B)
template<class T0 , class T1 , class T2 , class Allocator1 , class Allocator2 >
void Add (const T0 &alpha, const Matrix< T1, General, ArrayRowComplexSparse, Allocator1 > &A, Matrix< T2, General, ArrayRowComplexSparse, Allocator2 > &B)
template<class T0 , class T1 , class T2 , class T3 , class Allocator1 , class Allocator2 , class Allocator3 >
void Add (const T0 &alpha, const Matrix< T1, General, ArrayRowSparse, Allocator1 > &A, const Matrix< T2, General, ArrayRowSparse, Allocator2 > &B, Matrix< complex< T3 >, General, ArrayRowSparse, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class Allocator1 , class Allocator2 , class Allocator3 >
void Add (const T0 &alpha, const Matrix< T1, Symmetric, ArrayRowSymSparse, Allocator1 > &A, const Matrix< T2, Symmetric, ArrayRowSymSparse, Allocator2 > &B, Matrix< complex< T3 >, Symmetric, ArrayRowSymSparse, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class Allocator1 , class Allocator2 , class Allocator3 >
void Add (const T0 &alpha, const Matrix< T1, Symmetric, ArrayRowSymSparse, Allocator1 > &A, const Matrix< T2, Symmetric, ArrayRowSymSparse, Allocator2 > &B, Matrix< T3, Symmetric, ArrayRowSymComplexSparse, Allocator3 > &C)
template<class T0 , class T1 , class T2 , class T3 , class Allocator1 , class Allocator2 , class Allocator3 >
void Add (const T0 &alpha, const Matrix< T1, General, ArrayRowSparse, Allocator1 > &A, const Matrix< T2, General, ArrayRowSparse, Allocator2 > &B, Matrix< T3, General, ArrayRowComplexSparse, Allocator3 > &C)
template<class T0 , class T , class Allocator >
void Mlt (const T0 &alpha, Matrix< T, General, ArrayRowSparse, Allocator > &A)
template<class T0 , class T , class Allocator >
void Mlt (const T0 &alpha, Matrix< T, General, ArrayColSparse, Allocator > &A)
template<class T0 , class T , class Allocator >
void Mlt (const T0 &alpha, Matrix< T, Symmetric, ArrayRowSymSparse, Allocator > &A)
template<class T0 , class T , class Allocator >
void Mlt (const T0 &alpha, Matrix< T, Symmetric, ArrayColSymSparse, Allocator > &A)
template<class T0 , class T , class Allocator >
void Mlt (const T0 &alpha, Matrix< T, General, ArrayRowComplexSparse, Allocator > &A)
template<class T0 , class T , class Allocator >
void Mlt (const T0 &alpha, Matrix< T, Symmetric, ArrayRowSymComplexSparse, Allocator > &A)
template<class T1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 , class T3 , class Prop3 , class Storage3 , class Allocator3 >
void Mlt (const Matrix< T1, General, ArrayRowSparse, Allocator1 > &A, const Matrix< T2, Prop2, Storage2, Allocator2 > &B, Matrix< T3, Prop3, Storage3, Allocator3 > &C)
template<class Prop , class Allocator >
void ReadHarwellBoeing (string filename, Matrix< float, Prop, ColSparse, Allocator > &A)
 Reads a sparse matrix in a file in Harwell-Boeing format.
template<class Prop , class Allocator >
void ReadHarwellBoeing (string filename, Matrix< double, Prop, ColSparse, Allocator > &A)
template<class T , class Prop , class Storage , class Allocator >
void ReadHarwellBoeing (string filename, string value_type, string matrix_type, Matrix< T, Prop, Storage, Allocator > &A)
 Reads a sparse matrix in a file in Harwell-Boeing format.
template<class T , class Prop , class Allocator >
ostream & operator<< (ostream &out, const Matrix< T, Prop, ArrayRowSparse, Allocator > &A)
template<class T , class Prop , class Allocator >
ostream & operator<< (ostream &out, const Matrix< T, Prop, ArrayColSparse, Allocator > &A)
template<class T , class Prop , class Allocator >
ostream & operator<< (ostream &out, const Matrix< T, Prop, ArrayRowSymSparse, Allocator > &A)
template<class T , class Prop , class Allocator >
ostream & operator<< (ostream &out, const Matrix< T, Prop, ArrayColSymSparse, Allocator > &A)
template<class T , class Prop , class Allocator1 , class Allocator2 , class Tint , class Allocator3 , class Allocator4 >
void ConvertMatrix_to_Coordinates (const Matrix< T, Prop, RowSparse, Allocator1 > &A, Vector< Tint, VectFull, Allocator2 > &IndRow, Vector< Tint, VectFull, Allocator3 > &IndCol, Vector< T, VectFull, Allocator4 > &Val, int index, bool sym)
 Conversion from RowSparse to coordinate format.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Tint , class Allocator3 , class Allocator4 >
void ConvertMatrix_to_Coordinates (const Matrix< T, Prop, ColSparse, Allocator1 > &A, Vector< Tint, VectFull, Allocator2 > &IndRow, Vector< Tint, VectFull, Allocator3 > &IndCol, Vector< T, VectFull, Allocator4 > &Val, int index, bool sym)
 Conversion from ColSparse to coordinate format.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Tint , class Allocator3 , class Allocator4 >
void ConvertMatrix_to_Coordinates (const Matrix< T, Prop, RowSymSparse, Allocator1 > &A, Vector< Tint, VectFull, Allocator2 > &IndRow, Vector< Tint, VectFull, Allocator3 > &IndCol, Vector< T, VectFull, Allocator4 > &Val, int index, bool sym)
 Conversion from RowSymSparse to coordinate format.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Tint , class Allocator3 , class Allocator4 >
void ConvertMatrix_to_Coordinates (const Matrix< T, Prop, ColSymSparse, Allocator1 > &A, Vector< Tint, VectFull, Allocator2 > &IndRow, Vector< Tint, VectFull, Allocator3 > &IndCol, Vector< T, VectFull, Allocator4 > &Val, int index, bool sym)
 Conversion from ColSymSparse to coordinate format.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Tint , class Allocator3 , class Allocator4 >
void ConvertMatrix_to_Coordinates (const Matrix< T, Prop, ArrayRowSparse, Allocator1 > &A, Vector< Tint, VectFull, Allocator2 > &IndRow, Vector< Tint, VectFull, Allocator3 > &IndCol, Vector< T, VectFull, Allocator4 > &Val, int index, bool sym)
 Conversion from ArrayRowSparse to coordinate format.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Tint , class Allocator3 , class Allocator4 >
void ConvertMatrix_to_Coordinates (const Matrix< T, Prop, ArrayRowComplexSparse, Allocator1 > &A, Vector< Tint, VectFull, Allocator2 > &IndRow, Vector< Tint, VectFull, Allocator3 > &IndCol, Vector< complex< T >, VectFull, Allocator4 > &Val, int index, bool sym)
 Conversion from ArrayRowComplexSparse to coordinate format.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Tint , class Allocator3 , class Allocator4 >
void ConvertMatrix_to_Coordinates (const Matrix< T, Prop, ArrayColSparse, Allocator1 > &A, Vector< Tint, VectFull, Allocator2 > &IndRow, Vector< Tint, VectFull, Allocator3 > &IndCol, Vector< T, VectFull, Allocator4 > &Val, int index, bool sym)
 Conversion from ArrayColSparse to coordinate format.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Tint , class Allocator3 , class Allocator4 >
void ConvertMatrix_to_Coordinates (const Matrix< T, Prop, ArrayRowSymSparse, Allocator1 > &A, Vector< Tint, VectFull, Allocator2 > &IndRow, Vector< Tint, VectFull, Allocator3 > &IndCol, Vector< T, VectFull, Allocator4 > &Val, int index, bool sym)
 Conversion from ArrayRowSymSparse to coordinate format.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Tint , class Allocator3 , class Allocator4 >
void ConvertMatrix_to_Coordinates (const Matrix< T, Prop, ArrayColSymSparse, Allocator1 > &A, Vector< Tint, VectFull, Allocator2 > &IndRow, Vector< Tint, VectFull, Allocator3 > &IndCol, Vector< T, VectFull, Allocator4 > &Val, int index, bool sym)
 Conversion from ArrayColSymSparse to coordinate format.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void ConvertMatrix_from_Coordinates (Vector< int, VectFull, Allocator1 > &IndRow_, Vector< int, VectFull, Allocator2 > &IndCol_, Vector< T, VectFull, Allocator3 > &Val, Matrix< T, Prop, RowSparse, Allocator3 > &A, int index)
 Conversion from coordinate format to RowSparse.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void ConvertMatrix_from_Coordinates (Vector< int, VectFull, Allocator1 > &IndRow_, Vector< int, VectFull, Allocator2 > &IndCol_, Vector< T, VectFull, Allocator3 > &Val, Matrix< T, Prop, ColSparse, Allocator3 > &A, int index)
 Conversion from coordinate format to ColSparse.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void ConvertMatrix_from_Coordinates (Vector< int, VectFull, Allocator1 > &IndRow_, Vector< int, VectFull, Allocator2 > &IndCol_, Vector< T, VectFull, Allocator3 > &Val, Matrix< T, Prop, RowSymSparse, Allocator3 > &A, int index)
 Conversion from coordinate format to RowSymSparse.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void ConvertMatrix_from_Coordinates (Vector< int, VectFull, Allocator1 > &IndRow_, Vector< int, VectFull, Allocator2 > &IndCol_, Vector< T, VectFull, Allocator3 > &Val, Matrix< T, Prop, ColSymSparse, Allocator3 > &A, int index)
 Conversion from coordinate format to ColSymSparse.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void ConvertMatrix_from_Coordinates (Vector< int, VectFull, Allocator1 > &IndRow_, Vector< int, VectFull, Allocator2 > &IndCol_, Vector< T, VectFull, Allocator3 > &Val, Matrix< T, Prop, ArrayRowSparse, Allocator3 > &A, int index)
 Conversion from coordinate format to ArrayRowSparse.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void ConvertMatrix_from_Coordinates (Vector< int, VectFull, Allocator1 > &IndRow_, Vector< int, VectFull, Allocator2 > &IndCol_, Vector< T, VectFull, Allocator3 > &Val, Matrix< T, Prop, ArrayColSparse, Allocator3 > &A, int index)
 Conversion from coordinate format to ArrayColSparse.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void ConvertMatrix_from_Coordinates (Vector< int, VectFull, Allocator1 > &IndRow_, Vector< int, VectFull, Allocator2 > &IndCol_, Vector< T, VectFull, Allocator3 > &Val, Matrix< T, Prop, ArrayRowSymSparse, Allocator3 > &A, int index)
 Conversion from coordinate format to ArrayRowSymSparse.
template<class T , class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void ConvertMatrix_from_Coordinates (Vector< int, VectFull, Allocator1 > &IndRow_, Vector< int, VectFull, Allocator2 > &IndCol_, Vector< T, VectFull, Allocator3 > &Val, Matrix< T, Prop, ArrayColSymSparse, Allocator3 > &A, int index)
 Conversion from coordinate format to ArrayColSymSparse.
template<class T , class Prop , class Storage , class Allocator >
void Copy (const Matrix< T, Prop, Storage, Allocator > &A, Matrix< T, Prop, Storage, Allocator > &B)
 B = A.
template<class T , class Prop , class Alloc1 , class Tint , class Alloc2 , class Alloc3 , class Alloc4 >
void ConvertToCSC (const Matrix< T, Prop, RowSparse, Alloc1 > &A, General &sym, Vector< Tint, VectFull, Alloc2 > &Ptr, Vector< Tint, VectFull, Alloc3 > &Ind, Vector< T, VectFull, Alloc4 > &Val, bool sym_pat)
template<class T , class Prop , class Alloc1 , class Alloc2 >
void Copy (const Matrix< T, Prop, RowSparse, Alloc1 > &A, Matrix< T, Prop, ColSparse, Alloc2 > &B)
 Conversion from row-sparse to column-sparse.
template<class T , class Prop , class Alloc1 , class Tint , class Alloc2 , class Alloc3 , class Alloc4 >
void ConvertToCSR (const Matrix< T, Prop, ColSymSparse, Alloc1 > &A, Symmetric &sym, Vector< Tint, VectFull, Alloc2 > &Ptr, Vector< Tint, VectFull, Alloc3 > &Ind, Vector< T, VectFull, Alloc4 > &Value)
template<class T , class Prop , class Alloc1 , class Alloc2 >
void Copy (const Matrix< T, Prop, ColSymSparse, Alloc1 > &A, Matrix< T, Prop, RowSymSparse, Alloc2 > &B)
 Conversion from row-sparse to column-sparse.
template<class T , class Prop1 , class Storage , class Tint , class Alloc1 , class Alloc2 , class Alloc3 , class Alloc4 >
void ConvertSymmetricToCSC (const Matrix< T, Prop1, Storage, Alloc1 > &A, General &sym, Vector< Tint, VectFull, Alloc2 > &Ptr, Vector< Tint, VectFull, Alloc3 > &Ind, Vector< T, VectFull, Alloc4 > &Val, bool sym_pat)
 Conversion from row-sparse to column-sparse.
template<class T , class Prop1 , class Tint , class Alloc1 , class Alloc2 , class Alloc3 , class Alloc4 >
void ConvertToCSC (const Matrix< T, Prop1, RowSymSparse, Alloc1 > &A, General &sym, Vector< Tint, VectFull, Alloc2 > &Ptr, Vector< Tint, VectFull, Alloc3 > &Ind, Vector< T, VectFull, Alloc4 > &Val, bool sym_pat)
template<class T , class Prop1 , class Tint , class Alloc1 , class Alloc2 , class Alloc3 , class Alloc4 >
void ConvertToCSC (const Matrix< T, Prop1, ColSymSparse, Alloc1 > &A, General &sym, Vector< Tint, VectFull, Alloc2 > &Ptr, Vector< Tint, VectFull, Alloc3 > &Ind, Vector< T, VectFull, Alloc4 > &Val, bool sym_pat=false)
template<class T1 , class T2 , class Prop1 , class Prop2 , class Alloc1 , class Alloc2 >
void Copy (const Matrix< T1, Prop1, ColSparse, Alloc1 > &A, Matrix< T2, Prop2, RowSparse, Alloc2 > &B)
 Conversion from column-oriented sparse to row-oriented sparse.
template<class T , class Prop1 , class Prop2 , class Alloc1 , class Alloc2 >
void Copy (const Matrix< T, Prop1, RowSymSparse, Alloc1 > &A, Matrix< T, Prop2, ColSparse, Alloc2 > &B)
 Conversion from RowSymSparse to column-sparse.
template<class T , class Prop1 , class Prop2 , class Alloc1 , class Alloc2 >
void Copy (const Matrix< T, Prop1, ColSymSparse, Alloc1 > &A, Matrix< T, Prop2, ColSparse, Alloc2 > &B)
 Conversion from ColSymSparse to column-sparse.
template<class T , class Prop , class Alloc1 , class Tint , class Alloc2 , class Alloc3 , class Alloc4 >
void ConvertToCSR (const Matrix< T, Prop, ArrayRowSparse, Alloc1 > &A, General &sym, Vector< Tint, VectFull, Alloc2 > &IndRow, Vector< Tint, VectFull, Alloc3 > &IndCol, Vector< T, VectFull, Alloc4 > &Val)
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 >
void Copy (const Matrix< T0, Prop0, ArrayRowSparse, Allocator0 > &mat_array, Matrix< T1, Prop1, RowSparse, Allocator1 > &mat_csr)
 Conversion from ArrayRowSparse to RowSparse.
template<class T , class Prop , class Alloc1 , class Tint , class Alloc2 , class Alloc3 , class Alloc4 >
void ConvertToCSC (const Matrix< T, Prop, ArrayRowSparse, Alloc1 > &A, General &sym, Vector< Tint, VectFull, Alloc2 > &Ptr, Vector< Tint, VectFull, Alloc3 > &IndRow, Vector< T, VectFull, Alloc4 > &Val, bool sym_pat)
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 >
void Copy (const Matrix< T0, Prop0, ArrayRowSparse, Allocator0 > &mat_array, Matrix< T1, Prop1, ColSparse, Allocator1 > &mat_csr)
 Conversion from ArrayRowSparse to ColSparse.
template<class T , class Prop , class Alloc1 , class Tint , class Alloc2 , class Alloc3 , class Alloc4 >
void ConvertToCSR (const Matrix< T, Prop, ArrayRowSymSparse, Alloc1 > &A, Symmetric &sym, Vector< Tint, VectFull, Alloc2 > &IndRow, Vector< Tint, VectFull, Alloc3 > &IndCol, Vector< T, VectFull, Alloc4 > &Val)
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 >
void Copy (const Matrix< T0, Prop0, ArrayRowSymSparse, Allocator0 > &mat_array, Matrix< T1, Prop1, RowSymSparse, Allocator1 > &mat_csr)
 Conversion from ArrayRowSymSparse to RowSymSparse.
template<class T , class Prop , class Alloc1 , class Tint , class Alloc2 , class Alloc3 , class Alloc4 >
void ConvertToCSC (const Matrix< T, Prop, ArrayRowSymSparse, Alloc1 > &A, General &sym, Vector< Tint, VectFull, Alloc2 > &Ptr, Vector< Tint, VectFull, Alloc3 > &Ind, Vector< T, VectFull, Alloc4 > &AllVal, bool sym_pat)
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 >
void Copy (const Matrix< T0, Prop0, ArrayRowSymSparse, Allocator0 > &A, Matrix< T1, Prop1, ColSparse, Allocator1 > &B)
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 >
void Copy (const Matrix< T0, Prop0, ArrayRowComplexSparse, Allocator0 > &mat_array, Matrix< T1, Prop1, RowComplexSparse, Allocator1 > &mat_csr)
 Conversion from ArrayRowComplexSparse to RowComplexSparse.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 >
void Copy (const Matrix< T0, Prop0, ArrayRowSymComplexSparse, Allocator0 > &mat_array, Matrix< T1, Prop1, RowSymComplexSparse, Allocator1 > &mat_csr)
 Conversion from ArrayRowSymComplexSparse to RowSymComplexSparse.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 >
void Copy (const Matrix< T0, Prop0, ArrayRowSymSparse, Allocator0 > &A, Matrix< T1, Prop1, ArrayRowSparse, Allocator1 > &B)
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 >
void Copy (const Matrix< T0, Prop0, ArrayRowSymSparse, Allocator0 > &A, Matrix< T1, Prop1, ArrayColSparse, Allocator1 > &B)
template<class T , class Prop , class Alloc1 , class Tint , class Alloc2 , class Alloc3 , class Alloc4 >
void ConvertToCSC (const Matrix< T, Prop, ArrayColSparse, Alloc1 > &A, General &sym, Vector< Tint, VectFull, Alloc2 > &IndCol, Vector< Tint, VectFull, Alloc3 > &IndRow, Vector< T, VectFull, Alloc4 > &Val, bool sym_pat)
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 >
void Copy (const Matrix< T0, Prop0, ArrayColSparse, Allocator0 > &mat_array, Matrix< T1, Prop1, ColSparse, Allocator1 > &mat_csc)
 Conversion from ArrayColSparse to ColSparse.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 >
void Copy (const Matrix< T0, Prop0, ArrayRowSparse, Allocator0 > &A, Matrix< T1, Prop1, ArrayColSparse, Allocator1 > &B)
 Conversion from ArrayRowSparse to ArrayColSparse.
template<class T , class Prop , class Storage , class Allocator , class Tint , class Allocator2 , class Allocator3 >
void GetSymmetricPattern (const Matrix< T, Prop, Storage, Allocator > &A, Vector< Tint, VectFull, Allocator2 > &Ptr, Vector< Tint, VectFull, Allocator3 > &Ind)
template<class T , class Prop , class Storage , class Allocator , class AllocI >
void GetSymmetricPattern (const Matrix< T, Prop, Storage, Allocator > &A, Matrix< int, Symmetric, RowSymSparse, AllocI > &B)
template<class T , class Prop , class Allocator >
void ApplyInversePermutation (Matrix< T, Prop, RowSparse, Allocator > &A, const Vector< int > &row_perm, const Vector< int > &col_perm)
 Permutation of a general matrix stored by rows.
template<class T , class Prop , class Allocator >
void ApplyInversePermutation (Matrix< T, Prop, ColSparse, Allocator > &A, const Vector< int > &row_perm, const Vector< int > &col_perm)
 Permutation of a general matrix stored by columns.
template<class T , class Prop , class Allocator >
void ApplyInversePermutation (Matrix< T, Prop, ArrayRowSparse, Allocator > &A, const IVect &row_perm, const IVect &col_perm)
 Permutation of a general matrix stored by rows.
template<class T , class Prop , class Allocator >
void ApplyInversePermutation (Matrix< T, Prop, ArrayColSymSparse, Allocator > &A, const IVect &row_perm, const IVect &col_perm)
 Permutation of a symmetric matrix stored by columns.
template<class T , class Prop , class Allocator >
void ApplyInversePermutation (Matrix< T, Prop, ArrayRowSymComplexSparse, Allocator > &A, const IVect &row_perm, const IVect &col_perm)
 Permutation of a symmetric matrix stored by rows.
template<class T , class Prop , class Allocator >
void ApplyInversePermutation (Matrix< T, Prop, ArrayRowSymSparse, Allocator > &A, const IVect &row_perm, const IVect &col_perm)
 Permutation of a symmetric matrix stored by rows.
template<class Prop , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class Allocator3 >
void ScaleMatrix (Matrix< T1, Prop, ArrayRowSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &scale_left, const Vector< T3, VectFull, Allocator3 > &scale_right)
 Each row and column are scaled.
template<class Prop , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class Allocator3 >
void ScaleMatrix (Matrix< T1, Prop, ArrayRowSymSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &scale_left, const Vector< T3, VectFull, Allocator3 > &scale_right)
 Each row and column are scaled.
template<class Prop , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class Allocator3 >
void ScaleMatrix (Matrix< T1, Prop, ArrayRowSymComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &scale_left, const Vector< T3, VectFull, Allocator3 > &scale_right)
 Each row and column are scaled.
template<class Prop , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class Allocator3 >
void ScaleMatrix (Matrix< T1, Prop, ArrayRowComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &scale_left, const Vector< T3, VectFull, Allocator3 > &scale_right)
 Each row and column are scaled.
template<class T1 , class Allocator1 , class Prop , class T2 , class Allocator2 >
void ScaleLeftMatrix (Matrix< T1, Prop, ArrayRowSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &scale)
 Each row is scaled.
template<class T1 , class Allocator1 , class Prop , class T2 , class Allocator2 >
void ScaleLeftMatrix (Matrix< T1, Prop, ArrayRowSymSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &scale)
 Each row is scaled.
template<class T1 , class Allocator1 , class Prop , class T2 , class Allocator2 >
void ScaleLeftMatrix (Matrix< T1, Prop, ArrayRowSymComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &scale)
 Each row is scaled.
template<class T1 , class Allocator1 , class Prop , class T2 , class Allocator2 >
void ScaleLeftMatrix (Matrix< T1, Prop, ArrayRowComplexSparse, Allocator1 > &A, const Vector< T2, VectFull, Allocator2 > &scale)
 Each row is scaled.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void SOR (const Matrix< T0, Prop0, RowSparse, Allocator0 > &A, Vector< T2, Storage2, Allocator2 > &X, const Vector< T1, Storage1, Allocator1 > &B, const T3 &omega, int iter, int type_ssor=2)
 Successive overrelaxation.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void SOR (const Matrix< T0, Prop0, ArrayRowSparse, Allocator0 > &A, Vector< T2, Storage2, Allocator2 > &X, const Vector< T1, Storage1, Allocator1 > &B, const T3 &omega, int iter, int type_ssor=2)
 Successive overrelaxation.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void SOR (const Matrix< T0, Prop0, RowSymSparse, Allocator0 > &A, Vector< T2, Storage2, Allocator2 > &X, const Vector< T1, Storage1, Allocator1 > &B, const T3 &omega, int iter, int type_ssor=2)
 Successive overrelaxation.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void SOR (const Matrix< T0, Prop0, ArrayRowSymSparse, Allocator0 > &A, Vector< T2, Storage2, Allocator2 > &X, const Vector< T1, Storage1, Allocator1 > &B, const T3 &omega, int iter, int type_ssor=2)
 Successive overrelaxation.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void SOR (const Matrix< T0, Prop0, RowComplexSparse, Allocator0 > &A, Vector< complex< T2 >, Storage2, Allocator2 > &X, const Vector< complex< T1 >, Storage1, Allocator1 > &B, const T3 &omega, int iter, int type_ssor=2)
 Successive overrelaxation.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void SOR (const Matrix< T0, Prop0, ArrayRowComplexSparse, Allocator0 > &A, Vector< complex< T2 >, Storage2, Allocator2 > &X, const Vector< complex< T1 >, Storage1, Allocator1 > &B, const T3 &omega, int iter, int type_ssor=2)
 Successive overrelaxation.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void SOR (const Matrix< T0, Prop0, RowSymComplexSparse, Allocator0 > &A, Vector< complex< T2 >, Storage2, Allocator2 > &X, const Vector< complex< T1 >, Storage1, Allocator1 > &B, const T3 &omega, int iter, int type_ssor=2)
 Successive overrelaxation.
template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void SOR (const Matrix< T0, Prop0, ArrayRowSymComplexSparse, Allocator0 > &A, Vector< complex< T2 >, Storage2, Allocator2 > &X, const Vector< complex< T1 >, Storage1, Allocator1 > &B, const T3 &omega, int iter, int type_ssor=2)
 Successive overrelaxation.
template void ConvertMatrix_to_Coordinates (const Matrix< double, General, RowSparse, MallocAlloc< double > > &A, Vector< int > &IndRow, Vector< int > &IndCol, Vector< double, VectFull > &Val, int index=0, bool sym=false)
template void ConvertMatrix_from_Coordinates (Vector< int > &IndRow, Vector< int > &IndCol, Vector< double, VectFull > &Val, Matrix< double, General, RowSparse, MallocAlloc< double > > &A, int index=0)
template<typename T >
std::string to_str (const T &input)
 Converts most types to string.
template<class T >
void to_num (std::string s, T &num)
 Converts string to most types, specially numbers.
template<class T >
to_num (std::string s)
 Converts string to most types, specially numbers.
template<class T >
void SetComplexZero (T &number)
 Sets a number to zero.
template<class T >
void SetComplexZero (complex< T > &number)
 Sets a complex number to zero.
template<class T >
void SetComplexOne (T &number)
 Sets a number to one.
template<class T >
void SetComplexOne (complex< T > &number)
 Sets a complex number to (1, 0).
template<class T , class Storage , class Allocator >
int PartitionQuickSort (int m, int n, Vector< T, Storage, Allocator > &t)
 Intermediary function used for quick sort algorithm.
template<class T , class Storage , class Allocator >
void QuickSort (int m, int n, Vector< T, Storage, Allocator > &t)
 Vector t is sorted by using QuickSort algorithm.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
int PartitionQuickSort (int m, int n, Vector< T1, Storage1, Allocator1 > &t1, Vector< T2, Storage2, Allocator2 > &t2)
 Intermediary function used for quick sort algorithm.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void QuickSort (int m, int n, Vector< T1, Storage1, Allocator1 > &t1, Vector< T2, Storage2, Allocator2 > &t2)
 Vector t1 is sorted by using QuickSort algorithm.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
int PartitionQuickSort (int m, int n, Vector< T1, Storage1, Allocator1 > &t1, Vector< T2, Storage2, Allocator2 > &t2, Vector< T3, Storage3, Allocator3 > &t3)
 Intermediary function used for quick sort algorithm.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void QuickSort (int m, int n, Vector< T1, Storage1, Allocator1 > &t1, Vector< T2, Storage2, Allocator2 > &t2, Vector< T3, Storage3, Allocator3 > &t3)
 Vector t1 is sorted by using QuickSort algorithm.
template<class T , class Storage , class Allocator >
void MergeSort (int m, int n, Vector< T, Storage, Allocator > &tab1)
 Vector tab1 is sorted by using MergeSort algorithm.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void MergeSort (int m, int n, Vector< T1, Storage1, Allocator1 > &tab1, Vector< T2, Storage2, Allocator2 > &tab2)
 Vector tab1 is sorted by using MergeSort algorithm.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void MergeSort (int m, int n, Vector< T1, Storage1, Allocator1 > &tab1, Vector< T2, Storage2, Allocator2 > &tab2, Vector< T3, Storage3, Allocator3 > &tab3)
 Vector tab1 is sorted by using MergeSort algorithm.
template<class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Assemble (int &n, Vector< int, Storage1, Allocator1 > &Node, Vector< T2, Storage2, Allocator2 > &Vect)
 Assembles a sparse vector.
template<class T , class Storage1 , class Allocator1 >
void Assemble (int &n, Vector< T, Storage1, Allocator1 > &Node)
 Sorts and removes duplicate entries of a vector.
template<class T , class Storage1 , class Allocator1 >
void Assemble (Vector< T, Storage1, Allocator1 > &Node)
 Sorts and removes duplicate entries of a vector.
template<class T , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void RemoveDuplicate (int &n, Vector< T, Storage1, Allocator1 > &Node, Vector< T2, Storage2, Allocator2 > &Node2)
 Sorts and removes duplicate entries of a vector.
template<class T , class Storage1 , class Allocator1 >
void RemoveDuplicate (int &n, Vector< T, Storage1, Allocator1 > &Node)
 Sorts and removes duplicate entries of a vector.
template<class T , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void RemoveDuplicate (Vector< T, Storage1, Allocator1 > &Node, Vector< T2, Storage2, Allocator2 > &Node2)
 Sorts and removes duplicate entries of a vector.
template<class T , class Storage1 , class Allocator1 >
void RemoveDuplicate (Vector< T, Storage1, Allocator1 > &Node)
 Sorts and removes duplicate entries of a vector.
template<class T , class Storage , class Allocator >
void Sort (int m, int n, Vector< T, Storage, Allocator > &V)
 Sorts vector V between a start position and an end position.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Sort (int m, int n, Vector< T1, Storage1, Allocator1 > &V, Vector< T2, Storage2, Allocator2 > &V2)
 Sorts vector V between a start position and an end position.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Sort (int m, int n, Vector< T1, Storage1, Allocator1 > &V, Vector< T2, Storage2, Allocator2 > &V2, Vector< T3, Storage3, Allocator3 > &V3)
 Sorts vector V between a start position and an end position.
template<class T , class Storage , class Allocator >
void Sort (int n, Vector< T, Storage, Allocator > &V)
 Sorts the n first elements of V.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Sort (int n, Vector< T1, Storage1, Allocator1 > &V, Vector< T2, Storage2, Allocator2 > &V2)
 Sorts the n first elements of V.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Sort (int n, Vector< T1, Storage1, Allocator1 > &V, Vector< T2, Storage2, Allocator2 > &V2, Vector< T3, Storage3, Allocator3 > &V3)
 Sorts the n first elements of V.
template<class T , class Storage , class Allocator >
void Sort (Vector< T, Storage, Allocator > &V)
 Sorts vector V.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Sort (Vector< T1, Storage1, Allocator1 > &V, Vector< T2, Storage2, Allocator2 > &V2)
 Sorts vector V.
template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Sort (Vector< T1, Storage1, Allocator1 > &V, Vector< T2, Storage2, Allocator2 > &V2, Vector< T3, Storage3, Allocator3 > &V3)
 Sorts vector V.
template<class T , template< class U > class Allocator>
ostream & operator<< (ostream &out, const Vector< FloatDouble, DenseSparseCollection, Allocator< T > > &V)
 operator<< overloaded for vector collections.
template<class T , class Allocator >
ostream & operator<< (ostream &out, const Vector< T, VectSparse, Allocator > &V)
 operator<< overloaded for sparse vectors.
template<class T , class Storage , class Allocator >
ostream & operator<< (ostream &out, const Vector< T, Storage, Allocator > &V)
 operator<< overloaded for vectors.
template<class T , class Allocator >
ostream & operator<< (ostream &out, const Vector< T, Collection, Allocator > &V)
 operator<< overloaded for vector collections.

Variables

SELDON_EXTERN template class Matrix_Hermitian<@complex, General,@storage_blasHP, MallocAlloc<@complex > >
SELDON_EXTERN template class Matrix<@complex, General,@storage_blasHE, MallocAlloc<@complex > >
SELDON_EXTERN template class Matrix_Symmetric<@real_complex, General,@storage_blasSY, MallocAlloc<@real_complex > >
SELDON_EXTERN template class Matrix<@real_complex, General,@storage_blasSY, MallocAlloc<@real_complex > >
SELDON_EXTERN template class Matrix_Triangular<@real_complex, General,@storage_blasTR, MallocAlloc<@real_complex > >
SELDON_EXTERN template class Matrix<@real_complex, General,@storage_blasTR, MallocAlloc<@real_complex > >
SELDON_EXTERN template class Matrix_HermPacked<@complex, General,@storage_blasHP, MallocAlloc<@complex > >
SELDON_EXTERN template class Matrix<@complex, General,@storage_blasHP, MallocAlloc<@complex > >
SELDON_EXTERN template class Matrix_SymPacked<@real_complex, General,@storage_blasSP, MallocAlloc<@real_complex > >
SELDON_EXTERN template class Matrix<@real_complex, General,@storage_blasSP, MallocAlloc<@real_complex > >
SELDON_EXTERN template class Matrix_TriangPacked<@real_complex, General,@storage_blasTP, MallocAlloc<@real_complex > >
SELDON_EXTERN template class Matrix<@real_complex, General,@storage_blasTP, MallocAlloc<@real_complex > >
SELDON_EXTERN template class Matrix_Base<@scalar, MallocAlloc<@scalar > >
SELDON_EXTERN template class Matrix_Pointers<@scalar, General,@storage_blasGE, MallocAlloc<@scalar > >
SELDON_EXTERN template class Matrix<@scalar, General,@storage_blasGE, MallocAlloc<@scalar > >
SELDON_EXTERN template class MallocAlloc<@scalar >
SELDON_EXTERN template class Vector_Base<@scalar, MallocAlloc<@scalar > >
SELDON_EXTERN template class Vector<@scalar, VectFull, MallocAlloc<@scalar > >
LapackInfo lapack_info (0)
class_SeldonTrans SeldonTrans
class_SeldonNoTrans SeldonNoTrans
class_SeldonConjTrans SeldonConjTrans
class_SeldonNonUnit SeldonNonUnit
class_SeldonUnit SeldonUnit
SeldonUplo SeldonUpper (0)
SeldonUplo SeldonLower (1)
SeldonNorm SeldonNormInf (0)
SeldonNorm SeldonNorm1 (1)
SeldonConjugate SeldonUnconj (false)
SeldonConjugate SeldonConj (true)
class_SeldonLeft SeldonLeft
class_SeldonRight SeldonRight

Detailed Description

Seldon namespace.


Function Documentation

template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 >
void Seldon::Add ( const T0 &  alpha,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  A,
Matrix< T2, Prop2, Storage2, Allocator2 > &  B 
)

Adds two matrices.

It performs the operation $ B = \alpha A + B $ where $ \alpha $ is a scalar, and $ A $ and $ B $ are matrices.

Parameters:
[in] alpha scalar.
[in] A matrix.
[in,out] B matrix, result of the addition of B (on entry) and A times alpha.

Definition at line 1075 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Seldon::Add ( const T0 &  alpha,
const Matrix< T1, Prop1, RowMajorCollection, Allocator1 > &  A,
Matrix< T2, Prop2, RowMajorCollection, Allocator2 > &  B 
)

Adds two matrices.

It performs the operation $ B = \alpha A + B $ where $ \alpha $ is a scalar, and $ A $ and $ B $ are matrices.

Parameters:
[in] alpha scalar.
[in] A matrix.
[in,out] B matrix, result of the addition of B (on entry) and A times alpha.

Definition at line 1097 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Seldon::Add ( const T0 &  alpha,
const Matrix< T1, Prop1, ColMajorCollection, Allocator1 > &  A,
Matrix< T2, Prop2, ColMajorCollection, Allocator2 > &  B 
)

Adds two matrices.

It performs the operation $ B = \alpha A + B $ where $ \alpha $ is a scalar, and $ A $ and $ B $ are matrices.

Parameters:
[in] alpha scalar.
[in] A matrix.
[in,out] B matrix, result of the addition of B (on entry) and A times alpha.

Definition at line 1123 of file Functions_Matrix.cxx.

template<class T0 , class Allocator1 , class Allocator2 >
void Seldon::Add ( const T0  alpha,
const Matrix< FloatDouble, General, DenseSparseCollection, Allocator1 > &  A,
Matrix< FloatDouble, General, DenseSparseCollection, Allocator2 > &  B 
)

Multiplies a FloatDouble collection by a scalar.

Parameters:
[in] alpha scalar.
[in,out] M matrix to be multiplied.

Definition at line 1200 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Seldon::Add ( const T0 &  alpha,
const Matrix< T1, Prop1, RowSparse, Allocator1 > &  A,
Matrix< T2, Prop2, RowSparse, Allocator2 > &  B 
)

Adds two matrices.

It performs the operation $ B = \alpha A + B $ where $ \alpha $ is a scalar, and $ A $ and $ B $ are matrices.

Parameters:
[in] alpha scalar.
[in] A matrix.
[in,out] B matrix, result of the addition of B (on entry) and A times alpha.

Definition at line 1300 of file Functions_Matrix.cxx.

template<class T , class Prop , class Allocator >
void Seldon::ApplyInversePermutation ( Matrix< T, Prop, ColMajor, Allocator > &  A,
const Vector< int > &  row_perm,
const Vector< int > &  col_perm,
int  starting_index 
)

Inverse permutation of a general matrix stored by columns.

B(row_perm(i), col_perm(j)) = A(i,j) and A = B.

Equivalent Matlab operation: A(row_perm, col_perm) = A.

template<class T , class Prop , class Allocator >
void Seldon::ApplyInversePermutation ( Matrix< T, Prop, RowMajor, Allocator > &  A,
const Vector< int > &  row_perm,
const Vector< int > &  col_perm,
int  starting_index 
)

Inverse permutation of a general matrix stored by rows.

B(row_perm(i), col_perm(j)) = A(i,j) and A = B.

Equivalent Matlab operation: A(row_perm, col_perm) = A.

template<class T , class Prop , class Allocator >
void Seldon::ApplyInversePermutation ( Matrix< T, Prop, RowSparse, Allocator > &  A,
const Vector< int > &  row_perm,
const Vector< int > &  col_perm 
)

Permutation of a general matrix stored by rows.

B(row_perm(i), col_perm(j)) = A(i,j) and A = B. Equivalent Matlab operation: A(row_perm, col_perm) = A.

Definition at line 43 of file Permutation_ScalingMatrix.cxx.

template<class T , class Prop , class Allocator >
void Seldon::ApplyInversePermutation ( Matrix< T, Prop, ColSparse, Allocator > &  A,
const Vector< int > &  row_perm,
const Vector< int > &  col_perm 
)

Permutation of a general matrix stored by columns.

B(row_perm(i), col_perm(j)) = A(i,j) and A = B. Equivalent Matlab operation: A(row_perm, col_perm) = A.

Definition at line 130 of file Permutation_ScalingMatrix.cxx.

template<class T , class Prop , class Allocator >
void Seldon::ApplyInversePermutation ( Matrix< T, Prop, ArrayRowSparse, Allocator > &  A,
const IVect &  row_perm,
const IVect &  col_perm 
)

Permutation of a general matrix stored by rows.

B(row_perm(i), col_perm(j)) = A(i,j) and A = B. Equivalent Matlab operation: A(row_perm, col_perm) = A.

Definition at line 217 of file Permutation_ScalingMatrix.cxx.

template<class T , class Prop , class Allocator >
void Seldon::ApplyInversePermutation ( Matrix< T, Prop, ArrayColSymSparse, Allocator > &  A,
const IVect &  row_perm,
const IVect &  col_perm 
)

Permutation of a symmetric matrix stored by columns.

B(row_perm(i),col_perm(j)) = A(i,j) and A = B. Equivalent Matlab operation: A(row_perm, col_perm) = A.

Definition at line 268 of file Permutation_ScalingMatrix.cxx.

template<class T , class Prop , class Allocator >
void Seldon::ApplyInversePermutation ( Matrix< T, Prop, ArrayRowSymComplexSparse, Allocator > &  A,
const IVect &  row_perm,
const IVect &  col_perm 
)

Permutation of a symmetric matrix stored by rows.

B(row_perm(i),col_perm(j)) = A(i,j) and A = B. Equivalent Matlab operation: A(row_perm, col_perm) = A.

Definition at line 337 of file Permutation_ScalingMatrix.cxx.

template<class T , class Prop , class Allocator >
void Seldon::ApplyInversePermutation ( Matrix< T, Prop, ArrayRowSymSparse, Allocator > &  A,
const IVect &  row_perm,
const IVect &  col_perm 
)

Permutation of a symmetric matrix stored by rows.

B(row_perm(i),col_perm(j)) = A(i,j) and A = B. Equivalent Matlab operation: A(row_perm, col_perm) = A.

Definition at line 467 of file Permutation_ScalingMatrix.cxx.

template<class T , class Prop , class Allocator >
void Seldon::ApplyPermutation ( Matrix< T, Prop, RowMajor, Allocator > &  A,
const Vector< int > &  row_perm,
const Vector< int > &  col_perm,
int  starting_index 
)

Permutation of a general matrix stored by rows.

B(i, j) = A(row_perm(i), col_perm(j)) and A = B.

template<class T , class Prop , class Allocator >
void Seldon::ApplyPermutation ( Matrix< T, Prop, ColMajor, Allocator > &  A,
const Vector< int > &  row_perm,
const Vector< int > &  col_perm,
int  starting_index 
)

Permutation of a general matrix stored by columns.

B(i, j) = A(row_perm(i), col_perm(j)) and A = B.

template<class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::Assemble ( int &  n,
Vector< int, Storage1, Allocator1 > &  Node,
Vector< T2, Storage2, Allocator2 > &  Vect 
)

Assembles a sparse vector.

The function sorts the indices in Node and adds the corresponding values of Vect corresponding.

For example, if Node = [3 2 2 0], Vect = [1.0 0.4 0.4 -0.3], the function will return: n = 3, Node = [0 2 3], Vect = [-0.3 0.8 1.0].

Parameters:
[in,out] n on entry, the number of elements to assemble; on exit, the number of values after assembling.
[in,out] Node positions in the vector.
[in,out] Vect values.
Warning:
Vectors Node and Vect are not resized.

Definition at line 502 of file Functions_Arrays.cxx.

template<class T , class Storage1 , class Allocator1 >
void Seldon::Assemble ( int &  n,
Vector< T, Storage1, Allocator1 > &  Node 
)

Sorts and removes duplicate entries of a vector.

Parameters:
[in,out] n on entry, the number of elements to assemble; on exit, the number of values after assembling.
[in,out] Node vector to be assembled.
Warning:
The vector Node is not resized.

Definition at line 535 of file Functions_Arrays.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::BiCg ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves a linear system by using BiConjugate Gradient (BICG).

Solves the unsymmetric linear system Ax = b using the Preconditioned BiConjugate Gradient method.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See: R. Fletcher, Conjugate gradient methods for indefinite systems, In Numerical Analysis Dundee 1975, G. Watson, ed., Springer Verlag, Berlin, New York, 1976 pp. 73-89

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 47 of file BiCg.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::BiCgcr ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves a linear system by using BiCgCr.

Solves the symmetric linear system Ax = b using the BiConjugate Gradient Conjugate Residual method.

See Iterative Methods for the Solution of Very Large Complex Symmetric Linear Systems of Equations in Electrodynamics, Markus Clemens, Thomas Weiland Fachbereich 18 Elektrische Nachrichtentechnik, Fachgebiet Theorie Elektromagnetischer Felder, Technische Hochschule Darmstadt, Schlossgartenstr. 8, D-64289 Darmstadt, Germany

Parameters:
[in] A Complex Symmetric Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 45 of file BiCgcr.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::BiCgStab ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Implements BiConjugate Gradient Stabilized (BICG-STAB).

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See: H. Van der Vorst, Bi-CGSTAB: A fast and smoothly converging variant of BiCG for the solution of nonsysmmetric linear systems, SIAM J. Sci. Statist. Comput. 13(1992), pp. 631-644

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 44 of file BiCgStab.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::BiCgStabl ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Implements BiConjugate Gradient Stabilized (BICG-STAB(l)).

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See G L.G. Sleijpen, D. R. Fokkema BICGSTAB(l) For Linear Equations Involving Unsymmetric Matrices With Complex Spectrum

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 44 of file BiCgStabl.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::Cg ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves a linear system by using Conjugate Gradient (CG).

Solves the symmetric positive definite linear system A x = b.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See M. R. Hestenes nd E. Stiefel, Methods of conjugate gradients for solving linear system, Journal of Research of the National Bureau of Standards, 49(1952), pp. 409-436

Parameters:
[in] A Real Symmetric Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 46 of file Cg.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::Cgne ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves a linear system using Conjugate Gradient Normal Equation (CGNE).

Solves the unsymmetric linear system A x = b.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Right hand side of the linear system
[in] M Left preconditioner
[in] iter Iteration parameters

Definition at line 41 of file Cgne.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::Cgs ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves linear system using Conjugate Gradient Squared (CGS).

Solves the unsymmetric linear system Ax = b using the Conjugate Gradient Squared method.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See: P. Sonneveld, CGS, a fast Lanczos-type solver for nonsymmetric linear systems, SIAM, J.Sci. Statist. Comput., 10(1989), pp. 36-52

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 46 of file Cgs.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 >
void Seldon::CheckDim ( const Matrix< T0, Prop0, Storage0, Allocator0 > &  A,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  B,
const Matrix< T2, Prop2, Storage2, Allocator2 > &  C,
string  function = "" 
)

Checks the compatibility of the dimensions.

Checks that A B + C -> C is possible according to the dimensions of the matrices A, B and C. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
A matrix.
B matrix.
C matrix.
function (optional) function in which the compatibility is checked. Default: "".

Definition at line 1586 of file Functions_Matrix.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 >
void Seldon::CheckDim ( const SeldonTranspose &  TransA,
const Matrix< T0, Prop0, Storage0, Allocator0 > &  A,
const SeldonTranspose &  TransB,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  B,
const Matrix< T2, Prop2, Storage2, Allocator2 > &  C,
string  function = "" 
)

Checks the compatibility of the dimensions.

Checks that A B + C -> C is possible according to the dimensions of the matrices A, B and C. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
TransA status of A, e.g. transposed.
A matrix.
TransB status of B, e.g. transposed.
B matrix.
C matrix. (optional) function in which the compatibility is checked. Default: "".

Definition at line 1708 of file Functions_Matrix.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 >
void Seldon::CheckDim ( const SeldonSide &  side,
const Matrix< T0, Prop0, Storage0, Allocator0 > &  A,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  B,
const Matrix< T2, Prop2, Storage2, Allocator2 > &  C,
string  function = "" 
)

Checks the compatibility of the dimensions.

Checks that A B + C -> C or B A + C -> C is possible according to the dimensions of the matrices A, B and C. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
side side by which A is multiplied by B.
A matrix.
B matrix.
C matrix. (optional) function in which the compatibility is checked. Default: "".

Definition at line 1617 of file Functions_Matrix.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 >
void Seldon::CheckDim ( const SeldonTranspose &  TransA,
const Matrix< T0, Prop0, Storage0, Allocator0 > &  A,
const SeldonTranspose &  TransB,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  B,
string  function = "" 
)

Checks the compatibility of the dimensions.

Checks that A B -> C is possible according to the dimensions of the matrices A and B. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
TransA status of A, e.g. transposed.
A matrix.
TransB status of B, e.g. transposed.
B matrix. (optional) function in which the compatibility is checked. Default: "".

Definition at line 1661 of file Functions_Matrix.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 >
void Seldon::CheckDim ( const Matrix< T0, Prop0, Storage0, Allocator0 > &  A,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  B,
string  function = "" 
)

Checks the compatibility of the dimensions.

Checks that A B is possible according to the dimensions of the matrices A and B. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
A matrix.
B matrix. (optional) function in which the compatibility is checked. Default: "".

Definition at line 1753 of file Functions_Matrix.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 >
void Seldon::CheckDim ( const SeldonSide &  side,
const Matrix< T0, Prop0, Storage0, Allocator0 > &  A,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  B,
string  function = "" 
)

Checks the compatibility of the dimensions.

Checks that A B or B A is possible according to the dimensions of the matrices A and B. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
side side by which A is multiplied by B.
A matrix.
B matrix. (optional) function in which the compatibility is checked. Default: "".

Definition at line 1773 of file Functions_Matrix.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::CheckDim ( const Matrix< T0, Prop0, Storage0, Allocator0 > &  M,
const Vector< T1, Storage1, Allocator1 > &  X,
const Vector< T2, Storage2, Allocator2 > &  Y,
string  function = "" 
)

Checks the compatibility of the dimensions.

Checks that M X + Y -> Y is possible according to the dimensions of the matrix M and the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
M matrix.
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".

Definition at line 1152 of file Functions_MatVect.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Allocator1 , class T2 , class Allocator2 >
void Seldon::CheckDim ( const Matrix< T0, Prop0, RowMajorCollection, Allocator0 > &  M,
const Vector< T1, Collection, Allocator1 > &  X,
const Vector< T2, Collection, Allocator2 > &  Y,
string  function = "" 
)

Checks the compatibility of the dimensions.

Checks that M X + Y -> Y is possible according to the dimensions of the matrix M and the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
M matrix.
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".

Definition at line 1182 of file Functions_MatVect.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Allocator1 , class T2 , class Allocator2 >
void Seldon::CheckDim ( const Matrix< T0, Prop0, ColMajorCollection, Allocator0 > &  M,
const Vector< T1, Collection, Allocator1 > &  X,
const Vector< T2, Collection, Allocator2 > &  Y,
string  function = "" 
)

Checks the compatibility of the dimensions.

Checks that M X + Y -> Y is possible according to the dimensions of the matrix M and the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
M matrix.
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".

Definition at line 1212 of file Functions_MatVect.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void Seldon::CheckDim ( const Matrix< T0, Prop0, Storage0, Allocator0 > &  M,
const Vector< T1, Storage1, Allocator1 > &  X,
string  function = "",
string  op = "M X" 
)

Checks the compatibility of the dimensions.

Checks that M X is possible according to the dimensions of the matrix M and the vector X. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
M matrix.
X vector.
function (optional) function in which the compatibility is checked. Default: "".
op (optional) operation to be performed. Default: "M X".

Definition at line 1313 of file Functions_MatVect.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::CheckDim ( const SeldonTranspose &  trans,
const Matrix< T0, Prop0, Storage0, Allocator0 > &  M,
const Vector< T1, Storage1, Allocator1 > &  X,
const Vector< T2, Storage2, Allocator2 > &  Y,
string  function = "",
string  op = "M X + Y -> Y" 
)

Checks the compatibility of the dimensions.

Checks that M X + Y -> Y is possible according to the dimensions of the matrix M and the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
trans status of the matrix M, e.g. transposed.
M matrix.
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".
op (optional) operation to be performed on the vectors. Default: "M X + Y -> Y".

Definition at line 1275 of file Functions_MatVect.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::CheckDim ( const Matrix< T0, Prop0, Storage0, Allocator0 > &  M,
const Vector< T1, Collection, Allocator1 > &  X,
const Vector< T2, Storage2, Allocator2 > &  Y,
string  function = "" 
)

Checks the compatibility of the dimensions.

Checks that M X + Y -> Y is possible according to the dimensions of the matrix M and the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
M matrix.
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".

Definition at line 1242 of file Functions_MatVect.cxx.

template<class T0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void Seldon::CheckDim ( const Vector< T0, Storage0, Allocator0 > &  X,
const Vector< T1, Storage1, Allocator1 > &  Y,
string  function = "",
string  op = "X + Y" 
)

Checks the compatibility of the dimensions.

Checks that X + Y is possible according to the dimensions of the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".
op (optional) operation to be performed on the vectors. Default: "X + Y".

Definition at line 644 of file Functions_Vector.cxx.

template<class T0 , class Allocator0 , class T1 , class Allocator1 >
void Seldon::CheckDim ( const Vector< T0, Vect_Sparse, Allocator0 > &  X,
const Vector< T1, Vect_Sparse, Allocator1 > &  Y,
string  function = "",
string  op = "X + Y" 
)

Checks the compatibility of the dimensions.

Checks that X + Y is possible according to the dimensions of the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".
op (optional) operation to be performed on the vectors. Default: "X + Y".

Definition at line 672 of file Functions_Vector.cxx.

template<class T0 , class Allocator0 , class T1 , class Allocator1 >
void Seldon::CheckDim ( const Vector< T0, Collection, Allocator0 > &  X,
const Vector< T1, Collection, Allocator1 > &  Y,
string  function = "",
string  op = "X + Y" 
)

Checks the compatibility of the dimensions.

Checks that X + Y is possible according to the dimensions of the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".
op (optional) operation to be performed on the vectors. Default: "X + Y".

Definition at line 694 of file Functions_Vector.cxx.

template<class T0 , class Allocator0 , class Allocator00 , class T1 , class Allocator1 , class Allocator11 >
void Seldon::CheckDim ( const Vector< Vector< T0, Vect_Sparse, Allocator0 >, Collection, Allocator00 > &  X,
const Vector< Vector< T1, Vect_Sparse, Allocator1 >, Collection, Allocator11 > &  Y,
string  function = "",
string  op = "X + Y" 
)

Checks the compatibility of the dimensions.

Checks that X + Y is possible according to the dimensions of the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".
op (optional) operation to be performed on the vectors. Default: "X + Y".

Definition at line 731 of file Functions_Vector.cxx.

template<class T0 , class Allocator0 , class T1 , class Allocator1 >
void Seldon::CheckDim ( const Vector< T0, VectFull, Allocator0 > &  X,
Vector< T1, Collection, Allocator1 > &  Y,
string  function = "",
string  op = "X + Y" 
)

Checks the compatibility of the dimensions.

Checks that X + Y is possible according to the dimensions of the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".
op (optional) operation to be performed on the vectors. Default: "X + Y".

Definition at line 761 of file Functions_Vector.cxx.

template<class T0 , template< class U0 > class Allocator0, class T1 , template< class U1 > class Allocator1>
void Seldon::CheckDim ( const Vector< FloatDouble, DenseSparseCollection, Allocator0< T0 > > &  X,
const Vector< FloatDouble, DenseSparseCollection, Allocator1< T1 > > &  Y,
string  function = "",
string  op = "X + Y" 
)

Checks the compatibility of the dimensions.

Checks that X + Y is possible according to the dimensions of the vectors X and Y. If the dimensions are incompatible, an exception is raised (a WrongDim object is thrown).

Parameters:
X vector.
Y vector.
function (optional) function in which the compatibility is checked. Default: "".
op (optional) operation to be performed on the vectors. Default: "X + Y".

Definition at line 790 of file Functions_Vector.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::CoCg ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves a linear system by using Conjugate Orthogonal Conjugate Gradient.

Solves the symmetric complex linear system A x = b.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See H. Van der Vorst, J. Melissen, A Petrow-Galerkin type method solving Ax=b where A is symmetric complex IEEE Trans. Mag., vol 26, no 2, pp 706-708, 1990

Parameters:
[in] A Complex Symmetric Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Right hand side of the linear system
[in] M Left preconditioner
[in] iter Iteration parameters

Definition at line 45 of file CoCg.cxx.

template<class T , class Prop , class Allocator1 , class Allocator2 , class Allocator3 >
void Seldon::ConvertMatrix_from_Coordinates ( Vector< int, VectFull, Allocator1 > &  IndRow_,
Vector< int, VectFull, Allocator2 > &  IndCol_,
Vector< T, VectFull, Allocator3 > &  Val,
Matrix< T, Prop, RowSparse, Allocator3 > &  A,
int  index 
)

Conversion from coordinate format to RowSparse.

Contrary to the other conversion functions ConvertMatrix_from_Coordinates, this one accepts duplicates.

Parameters:
[in] IndRow_ row indexes of the non-zero elements.
[in] IndCol_ column indexes of the non-zero elements.
[in] Val values of the non-zero elements.
[out] A matrix defined by IndRow, IndCol and Val.
[in] index index of the first column and of the first row.
template<class T1 , class T2 , class Prop1 , class Prop2 , class Alloc1 , class Alloc2 >
void Seldon::Copy ( const Matrix< T1, Prop1, ColSparse, Alloc1 > &  A,
Matrix< T2, Prop2, RowSparse, Alloc2 > &  B 
)

Conversion from column-oriented sparse to row-oriented sparse.

Parameters:
[in] A matrix to be converted.
[out] B converted matrix.
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::Gcr ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  outer 
)

Solves a linear system by using Generalized Conjugate Residual (GCR).

Solves the linear system Ax = b with restarted Preconditioned Generalized Conjugate Residual Algorithm.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See: Y. Saad, Iterative Methods for Sparse Linear System, PWS Publishing Company, 1996

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] outer Iteration parameters

Definition at line 46 of file Gcr.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void Seldon::GetAndSolveLU ( Matrix< T0, Prop0, Storage0, Allocator0 > &  M,
Vector< T1, Storage1, Allocator1 > &  Y 
)

Solves a linear system using LU factorization.

This function solves $ M X = Y $ where $ M $ is a matrix, and $ X $ and $ Y $ are vectors.

Parameters:
[in] M the matrix of the linear system, to be factorized in LU form. On exit, M contains its LU factorization.
[in,out] Y on entry, the right-hand side $ Y $; on exit, the solution $ X $ of the system.

Definition at line 1116 of file Functions_MatVect.cxx.

template<class T , class Prop , class Allocator >
void Seldon::GetCholesky ( Matrix< T, Prop, ArrayRowSymSparse, Allocator > &  A  ) 

Implementation of Cholesky factorization for sparse symmetric matrix.

This method may be slow for large matrices. For large matrices, it is more efficient to use an external library (Cholmod for example)

Warning:
The diagonal value is set to invert of diagonal value of true L so that no division is performed when SolveCholesky is called.

Definition at line 32 of file SparseCholeskyFactorisation.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 >
void Seldon::GetLU ( Matrix< T0, Prop0, Storage0, Allocator0 > &  A  ) 

Returns the LU factorization of a matrix.

It factorizes the matrix A into L and U, so that $ A = L U $, L is a lower triangular matrix with ones on the diagonal, and U is an upper triangular matrix. On exit, the LU factorization is stored inside A: L in the lower part and U in the upper part. The diagonal elements are those of U. The diagonal elements of L are known to be ones.

Parameters:
[in,out] A on entry, the matrix to be factorized; on exit, the LU factorization.
See also:
Seldon::SolveLU(const Matrix<T0, Prop0, Storage0, Allocator0>& M, Vector<T1, Storage1, Allocator1>& Y)

Definition at line 1531 of file Functions_Matrix.cxx.

template<class Titer , class MatrixSparse , class Vector1 , class Preconditioner >
int Seldon::Gmres ( MatrixSparse &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  outer 
)

Solves a linear system by using Generalized Minimum Residual (GMRES).

Solves the unsymmetric linear system Ax = b using restarted GMRES.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See: Y. Saad and M. Schulter. GMRES: A generalized minimum residual algorithm for solving nonsysmmetric linear systems, SIAM J. Sci. Statist. Comp. 7(1986), pp, 856-869

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] outer Iteration parameters

Definition at line 45 of file Gmres.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::Lsqr ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves a linear system by using Least Squares (LSQR).

Solves the unsymmetric linear system A x = b.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 41 of file Lsqr.cxx.

template<class T , class Prop , class Storage , class Allocator >
T Seldon::MaxAbs ( const Matrix< T, Prop, Storage, Allocator > &  A  ) 

Returns the maximum (in absolute value) of a matrix.

Parameters:
[in] A matrix.
Returns:
The maximum (in absolute value) of all elements of A.

Definition at line 1809 of file Functions_Matrix.cxx.

template<class T , class Prop , class Storage , class Allocator >
T Seldon::MaxAbs ( const Matrix< complex< T >, Prop, Storage, Allocator > &  A  ) 

Returns the maximum (in modulus) of a matrix.

Parameters:
[in] A matrix.
Returns:
The maximum (in modulus) of all elements of A.

Definition at line 1870 of file Functions_Matrix.cxx.

template<class T , class Storage , class Allocator >
void Seldon::MergeSort ( int  m,
int  n,
Vector< T, Storage, Allocator > &  tab1 
)

Vector tab1 is sorted by using MergeSort algorithm.

Sorts array tab1 between position m and n.

Definition at line 254 of file Functions_Arrays.cxx.

template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::MergeSort ( int  m,
int  n,
Vector< T1, Storage1, Allocator1 > &  tab1,
Vector< T2, Storage2, Allocator2 > &  tab2 
)

Vector tab1 is sorted by using MergeSort algorithm.

Sorts array tab1 between position m and n. The sort operation affects tab2.

Definition at line 337 of file Functions_Arrays.cxx.

template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Seldon::MergeSort ( int  m,
int  n,
Vector< T1, Storage1, Allocator1 > &  tab1,
Vector< T2, Storage2, Allocator2 > &  tab2,
Vector< T3, Storage3, Allocator3 > &  tab3 
)

Vector tab1 is sorted by using MergeSort algorithm.

Sorts array tab1 between position m and n. The sort operation affects tab2 and tab3.

Definition at line 412 of file Functions_Arrays.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::MinRes ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves a linear system by using Minimum Residual (MinRes).

Solves a real symmetric linear system Ax = b with restarted Preconditioned Minimum Residual Algorithm.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See C. PAIGE AND M. SAUNDERS, Solution of sparse indefinite systems of linear equations, SIAM J. Numer. Anal., 12 (1975), pp. 617-629.

Parameters:
[in] A Real Symmetric Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 47 of file MinRes.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Seldon::Mlt ( const Matrix< T0, Prop0, RowSparse, Allocator0 > &  A,
const Matrix< T1, Prop1, RowSparse, Allocator1 > &  B,
Matrix< T2, Prop2, RowSparse, Allocator2 > &  C 
)

Multiplies two row-major sparse matrices in Harwell-Boeing format.

It performs the operation $ C = A B $ where $ A $, $ B $ and $ C $ are row-major sparse matrices in Harwell-Boeing format.

Parameters:
[in] A row-major sparse matrix in Harwell-Boeing format.
[in] B row-major sparse matrix in Harwell-Boeing format.
[out] C row-major sparse matrix in Harwell-Boeing format, result of the product of A with B. It does not need to have the right non-zero entries.

Definition at line 231 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 >
void Seldon::Mlt ( const T0  alpha,
Matrix< T1, Prop1, Storage1, Allocator1 > &  A 
) throw ()

Multiplies a matrix by a scalar.

Parameters:
[in] alpha scalar.
[in,out] M matrix to be multiplied.

Definition at line 73 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 >
void Seldon::Mlt ( const T0  alpha,
Matrix< T1, Prop1, RowMajorCollection, Allocator1 > &  A 
)

Multiplies a matrix by a scalar.

Parameters:
[in] alpha scalar.
[in,out] M matrix to be multiplied.

Definition at line 110 of file Functions_Matrix.cxx.

template<class T0 , class Allocator >
void Seldon::Mlt ( const T0  alpha,
Matrix< FloatDouble, General, DenseSparseCollection, Allocator > &  A 
)

Multiplies a FloatDouble collection by a scalar.

Parameters:
[in] alpha scalar.
[in,out] M matrix to be multiplied.

Definition at line 126 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 >
void Seldon::Mlt ( const T0  alpha,
Matrix< T1, Prop1, ColMajorCollection, Allocator1 > &  A 
)

Multiplies a matrix by a scalar.

Parameters:
[in] alpha scalar.
[in,out] M matrix to be multiplied.

Definition at line 93 of file Functions_Matrix.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::Mlt ( const Matrix< T0, Prop0, Storage0, Allocator0 > &  M,
const Vector< T1, Storage1, Allocator1 > &  X,
Vector< T2, Storage2, Allocator2 > &  Y 
)

Performs the multiplication of a matrix with a vector.

It performs the operation $ Y = M X $ where $ M $ is a $ m \times n $ matrix, and $ X $ is a vector of length $ n $. The returned vector $ Y $ must be of length $ m $.

Parameters:
[in] M m by n matrix.
[in] X vector of length n.
[out] Y vector of length m, result of the product of M by X. It must have the right length on entry: it will not be resized.

Definition at line 69 of file Functions_MatVect.cxx.

template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 , class T3 , class Prop3 , class Storage3 , class Allocator3 >
void Seldon::Mlt ( const T0  alpha,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  A,
const Matrix< T2, Prop2, Storage2, Allocator2 > &  B,
Matrix< T3, Prop3, Storage3, Allocator3 > &  C 
)

Multiplies two matrices.

It performs the operation $ C = \alpha A B $ where $ \alpha $ is a scalar, and $ A $, $ B $ and $ C $ are matrices.

Parameters:
[in] alpha scalar.
[in] A matrix.
[in] B matrix.
[out] C matrix, result of the product of A with B, times alpha.

Definition at line 190 of file Functions_Matrix.cxx.

template<class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Seldon::Mlt ( const T3 &  alpha,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  M,
const Vector< T2, Storage2, Allocator2 > &  X,
Vector< T3, Storage3, Allocator3 > &  Y 
)

Performs the multiplication of a matrix with a vector.

It performs the operation $ Y = \alpha M X $ where $ \alpha $ is a scalar, $ M $ is a $ m \times n $ matrix, and $ X $ is a vector of length $ n $. The returned vector $ Y $ must be of length $ m $.

Parameters:
[in] alpha scalar.
[in] M m by n matrix.
[in] X vector of length n.
[out] Y vector of length m, result of the product of M by X, times alpha. It must have the right length on entry: it will not be resized.

Definition at line 93 of file Functions_MatVect.cxx.

template<class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Seldon::Mlt ( const SeldonTranspose &  Trans,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  M,
const Vector< T2, Storage2, Allocator2 > &  X,
Vector< T3, Storage3, Allocator3 > &  Y 
)

Performs the multiplication of a matrix with a vector.

It performs the operation $ Y = M X $ or $ Y = M^T X $ where $ M $ is a $ m \times n $ matrix, and $ X $ is a vector of length $ m $. The returned vector $ Y $ must be of length $ n $.

Parameters:
[in] Trans transposition status of M: it may be SeldonNoTrans or SeldonTrans.
[in] M m by n matrix.
[in] X vector of length m.
[out] Y vector of length n, result of the product of M^T by X. It must have the right length on entry: it will not be resized.

Definition at line 117 of file Functions_MatVect.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 >
void Seldon::Mlt ( const Matrix< T0, Prop0, Storage0, Allocator0 > &  A,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  B,
Matrix< T2, Prop2, Storage2, Allocator2 > &  C 
)

Multiplies two matrices.

It performs the operation $ C = A B $ where $ A $, $ B $ and $ C $ are matrices.

Parameters:
[in] A matrix.
[in] B matrix.
[out] C matrix, result of the product of A with B.

Definition at line 210 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class T4 , class Allocator4 >
void Seldon::MltAdd ( const T0  alpha,
const Matrix< T1, Prop1, ColMajorCollection, Allocator1 > &  M,
const Vector< T2, Collection, Allocator2 > &  X,
const T3  beta,
Vector< T4, Collection, Allocator4 > &  Y 
)

Performs the multiplication of a matrix collection with a vector collection, and adds the result to another vector.

It performs the operation $ Y = \alpha M X + \beta Y $ where $ \alpha $ and $ \beta $ are scalars, $ M $ is a $ m \times n $ matrix, and $ X $ is a vector of length $ n $. The vector $ Y $ must be of length $ m $.

Parameters:
[in] alpha scalar.
[in] M m by n matrix colection.
[in] X vector collection of length n.
[in] beta scalar.
[in,out] Y vector collection of length m, result of the product of M by X, times alpha, plus Y (on entry) times beta.

Definition at line 808 of file Functions_MatVect.cxx.

template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void Seldon::MltAdd ( const T0  alpha,
const SeldonTranspose &  Trans,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  M,
const Vector< T2, Storage2, Allocator2 > &  X,
const T3  beta,
Vector< T4, Storage4, Allocator4 > &  Y 
)

Performs the multiplication of a matrix (possibly transposed) with a vector, and adds the result to another vector.

It performs the operation $ Y = \alpha M X + \beta Y $ or $ Y = \alpha M^T X + \beta Y $ where $ \alpha $ and $ \beta $ are scalars, $ M $ is a $ m \times n $ matrix or a $ n \times m $ matrix, and $ X $ is a vector of length $ n $. The vector $ Y $ must be of length $ m $.

Parameters:
[in] alpha scalar.
[in] Trans transposition status of M: it may be SeldonNoTrans or SeldonTrans.
[in] M m by n matrix, or n by m matrix if transposed.
[in] X vector of length n.
[in] beta scalar.
[in,out] Y vector of length m, result of the product of M by X, times alpha, plus Y (on entry) times beta.
Note:
Trans must be either SeldonNoTrans or SeldonTrans: ConjTrans is not supported.

Definition at line 855 of file Functions_MatVect.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class T4 , class Allocator4 >
void Seldon::MltAdd ( const T0  alpha,
const Matrix< T1, Prop1, RowMajorCollection, Allocator1 > &  M,
const Vector< T2, Collection, Allocator2 > &  X,
const T3  beta,
Vector< T4, Collection, Allocator4 > &  Y 
)

Performs the multiplication of a matrix collection with a vector collection, and adds the result to another vector.

It performs the operation $ Y = \alpha M X + \beta Y $ where $ \alpha $ and $ \beta $ are scalars, $ M $ is a $ m \times n $ matrix, and $ X $ is a vector of length $ n $. The vector $ Y $ must be of length $ m $.

Parameters:
[in] alpha scalar.
[in] M m by n matrix colection.
[in] X vector collection of length n.
[in] beta scalar.
[in,out] Y vector collection of length m, result of the product of M by X, times alpha, plus Y (on entry) times beta.

Definition at line 766 of file Functions_MatVect.cxx.

template<class T0 , class Allocator1 , class Allocator2 , class T3 , class Allocator4 >
void Seldon::MltAdd ( const T0  alpha,
const Matrix< FloatDouble, General, DenseSparseCollection, Allocator1 > &  A,
const Matrix< FloatDouble, General, DenseSparseCollection, Allocator2 > &  B,
const T3  beta,
Matrix< FloatDouble, General, DenseSparseCollection, Allocator4 > &  C 
)

Multiplies a FloatDouble collection by a scalar.

Parameters:
[in] alpha scalar.
[in,out] M matrix to be multiplied.

Definition at line 844 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Allocator4 >
void Seldon::MltAdd ( const T0  alpha,
const Matrix< T1, Prop1, RowSparse, Allocator1 > &  A,
const Matrix< T2, Prop2, RowSparse, Allocator2 > &  B,
const T3  beta,
Matrix< T4, Prop4, RowSparse, Allocator4 > &  C 
)

Multiplies two row-major sparse matrices and adds the result to a third.

It performs the operation $ C = \alpha A B + \beta C $ where $ A $, $ B $ and $ C $ are row-major sparse matrices in Harwell-Boeing format, and $ \alpha $ and $ \beta $ are scalars.

Parameters:
[in] alpha scalar.
[in] A row-major sparse matrix in Harwell-Boeing format.
[in] B row-major sparse matrix in Harwell-Boeing format.
[in] beta scalar.
[in,out] C row-major sparse matrix in Harwell-Boeing format. On exit, it is equal to $ \alpha A B + \beta C $.

Definition at line 921 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Storage4 , class Allocator4 >
void Seldon::MltAdd ( const T0  alpha,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  M,
const Vector< T2, Storage2, Allocator2 > &  X,
const T3  beta,
Vector< T4, Storage4, Allocator4 > &  Y 
)

Performs the multiplication of a matrix with a vector, and adds the result to another vector.

It performs the operation $ Y = \alpha M X + \beta Y $ where $ \alpha $ and $ \beta $ are scalars, $ M $ is a $ m \times n $ matrix, and $ X $ is a vector of length $ n $. The vector $ Y $ must be of length $ m $.

Parameters:
[in] alpha scalar.
[in] M m by n matrix.
[in] X vector of length n.
[in] beta scalar.
[in,out] Y vector of length m, result of the product of M by X, times alpha, plus Y (on entry) times beta.

Definition at line 718 of file Functions_MatVect.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Allocator4 >
void Seldon::MltAdd ( const T0  alpha,
const SeldonTranspose &  TransA,
const Matrix< T1, Prop1, RowSparse, Allocator1 > &  A,
const SeldonTranspose &  TransB,
const Matrix< T2, Prop2, RowSparse, Allocator2 > &  B,
const T3  beta,
Matrix< T4, Prop4, RowSparse, Allocator4 > &  C 
)

Multiplies two row-major sparse matrices and adds the result to a third.

It performs the operation $ C = \alpha A B + \beta C $ or $ C = \alpha A B^T + \beta C $ where $ A $, $ B $ and $ C $ are row-major sparse matrices in Harwell-Boeing format, and $ \alpha $ and $ \beta $ are scalars.

Parameters:
[in] alpha scalar.
[in] TransA status of A: it must be SeldonNoTrans. This argument is required for consistency with the interface for full matrices.
[in] A row-major sparse matrix in Harwell-Boeing format.
[in] TransB status of B: SeldonNoTrans or SeldonTrans.
[in] B row-major sparse matrix in Harwell-Boeing format.
[in] beta scalar.
[in,out] C row-major sparse matrix in Harwell-Boeing format. On exit, it is equal to $ \alpha A B + \beta C $ or $ \alpha A B^T + \beta C $.
Note:
If TransA is not SeldonNoTrans, an exception will be thrown.

Definition at line 1027 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Allocator4 >
void Seldon::MltAdd ( const T0  alpha,
const Matrix< T1, Prop1, RowMajorCollection, Allocator1 > &  A,
const Matrix< T2, Prop2, RowMajorCollection, Allocator2 > &  B,
const T3  beta,
Matrix< T4, Prop4, RowMajorCollection, Allocator4 > &  C 
)

Multiplies two matrices, and adds the result to a third matrix.

It performs the operation $ C = \alpha A B + \beta C $ where $ \alpha $ and $ \beta $ are scalars, and $ A $, $ B $ and $ C $ are matrices.

Parameters:
[in] alpha scalar.
[in] A matrix.
[in] B matrix.
[in] beta scalar.
[in,out] C matrix, result of the product of A with B, times alpha, plus beta times C.

Definition at line 597 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Allocator4 >
void Seldon::MltAdd ( const T0  alpha,
const Matrix< T1, Prop1, ColMajorCollection, Allocator1 > &  A,
const Matrix< T2, Prop2, ColMajorCollection, Allocator2 > &  B,
const T3  beta,
Matrix< T4, Prop4, ColMajorCollection, Allocator4 > &  C 
)

Multiplies two matrices, and adds the result to a third matrix.

It performs the operation $ C = \alpha A B + \beta C $ where $ \alpha $ and $ \beta $ are scalars, and $ A $, $ B $ and $ C $ are matrices.

Parameters:
[in] alpha scalar.
[in] A matrix.
[in] B matrix.
[in] beta scalar.
[in,out] C matrix, result of the product of A with B, times alpha, plus beta times C.

Definition at line 639 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Storage1 , class Allocator1 , class T2 , class Prop2 , class Storage2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Storage4 , class Allocator4 >
void Seldon::MltAdd ( const T0  alpha,
const Matrix< T1, Prop1, Storage1, Allocator1 > &  A,
const Matrix< T2, Prop2, Storage2, Allocator2 > &  B,
const T3  beta,
Matrix< T4, Prop4, Storage4, Allocator4 > &  C 
)

Multiplies two matrices, and adds the result to a third matrix.

It performs the operation $ C = \alpha A B + \beta C $ where $ \alpha $ and $ \beta $ are scalars, and $ A $, $ B $ and $ C $ are matrices.

Parameters:
[in] alpha scalar.
[in] A matrix.
[in] B matrix.
[in] beta scalar.
[in,out] C matrix, result of the product of A with B, times alpha, plus beta times C.

Definition at line 540 of file Functions_Matrix.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 >
void Seldon::MltNoTransTrans ( const Matrix< T0, Prop0, RowSparse, Allocator0 > &  A,
const Matrix< T1, Prop1, RowSparse, Allocator1 > &  B,
Matrix< T2, Prop2, RowSparse, Allocator2 > &  C 
)

Multiplies two row-major sparse matrices in Harwell-Boeing format.

It performs the operation $ C = A B^T $ where $ A $, $ B $ and $ C $ are row-major sparse matrices in Harwell-Boeing format.

Parameters:
[in] A row-major sparse matrix in Harwell-Boeing format.
[in] B row-major sparse matrix in Harwell-Boeing format.
[out] C row-major sparse matrix in Harwell-Boeing format, result of the product of A with B transposed. It does not need to have the right non-zero entries.

Definition at line 378 of file Functions_Matrix.cxx.

template<class T0 , class T1 , class Prop1 , class Allocator1 , class T2 , class Prop2 , class Allocator2 , class T3 , class T4 , class Prop4 , class Allocator4 >
void Seldon::MltNoTransTransAdd ( const T0  alpha,
const Matrix< T1, Prop1, RowSparse, Allocator1 > &  A,
const Matrix< T2, Prop2, RowSparse, Allocator2 > &  B,
const T3  beta,
Matrix< T4, Prop4, RowSparse, Allocator4 > &  C 
)

Multiplies two row-major sparse matrices and adds the result to a third.

It performs the operation $ C = \alpha A B^T + \beta C $ where $ A $, $ B $ and $ C $ are row-major sparse matrices in Harwell-Boeing format, and $ \alpha $ and $ \beta $ are scalars.

Parameters:
[in] alpha scalar.
[in] A row-major sparse matrix in Harwell-Boeing format.
[in] B row-major sparse matrix in Harwell-Boeing format.
[in] beta scalar.
[in,out] C row-major sparse matrix in Harwell-Boeing format. On exit, it is equal to $ \alpha A B^T + \beta C $.
Warning:
It is not recommended to call that function directly: it might be removed in next versions of Seldon. Use MltAdd instead.

Definition at line 972 of file Functions_Matrix.cxx.

template<class T , class Prop , class Storage , class Allocator >
T Seldon::Norm1 ( const Matrix< T, Prop, Storage, Allocator > &  A  ) 

Returns the 1-norm of a matrix.

Parameters:
[in] A matrix.
Returns:
$ max_j \sum_i |A_{ij}| $

Definition at line 1826 of file Functions_Matrix.cxx.

template<class T , class Prop , class Storage , class Allocator >
T Seldon::Norm1 ( const Matrix< complex< T >, Prop, Storage, Allocator > &  A  ) 

Returns the 1-norm of a matrix.

Parameters:
[in] A matrix.
Returns:
$ max_j \sum_i |A_{ij}| $

Definition at line 1889 of file Functions_Matrix.cxx.

template<class T , class Prop , class Storage , class Allocator >
T Seldon::NormInf ( const Matrix< T, Prop, Storage, Allocator > &  A  ) 

Returns the infinity-norm of a matrix.

Parameters:
[in] A matrix.
Returns:
$ max_i \sum_j |A_{ij}| $

Definition at line 1848 of file Functions_Matrix.cxx.

template<class T , class Prop , class Storage , class Allocator >
T Seldon::NormInf ( const Matrix< complex< T >, Prop, Storage, Allocator > &  A  ) 

Returns the infinity-norm of a matrix.

Parameters:
[in] A matrix.
Returns:
$ max_i \sum_j |A_{ij}| $

Definition at line 1911 of file Functions_Matrix.cxx.

template<class T , class Allocator >
ostream & Seldon::operator<< ( ostream &  out,
const Array3D< T, Allocator > &  A 
)

operator<< overloaded for a 3D array.

Parameters:
out output stream.
A the 3D array.
Returns:
The updated stream.
template<class T , template< class U > class Allocator>
ostream & Seldon::operator<< ( ostream &  out,
const Vector< FloatDouble, DenseSparseCollection, Allocator< T > > &  V 
)

operator<< overloaded for vector collections.

Parameters:
[in] out output stream.
[in] V vector collection to be put in the stream.
Returns:
The updated stream.
template<class T , class Allocator >
ostream & Seldon::operator<< ( ostream &  out,
const Vector< T, VectSparse, Allocator > &  V 
)

operator<< overloaded for sparse vectors.

Parameters:
out output stream.
V vector to be put in the stream.
Returns:
The updated stream.
template<class T , class Storage , class Allocator >
ostream & Seldon::operator<< ( ostream &  out,
const Vector< T, Storage, Allocator > &  V 
)

operator<< overloaded for vectors.

Parameters:
out output stream.
V vector to be put in the stream.
Returns:
The updated stream.
template<class T , class Allocator >
ostream & Seldon::operator<< ( ostream &  out,
const Vector< T, Collection, Allocator > &  V 
)

operator<< overloaded for vector collections.

Parameters:
[in] out output stream.
[in] V vector collection to be put in the stream.
Returns:
The updated stream.
template<class T , class Prop , class Storage , class Allocator >
ostream & Seldon::operator<< ( ostream &  out,
const Matrix< T, Prop, Storage, Allocator > &  A 
)
Parameters:
out output stream.
A matrix to be put in the stream.
Returns:
The updated stream.
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::QCgs ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves linear system using Quasi-minimized Conjugate Gradient Squared.

Solves the unsymmetric linear system Ax = b using the Quasi-minimized Conjugate Gradient Squared method.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

see A Comparative Study of Preconditioned Lanczos Methods for Nonsymmetric Linear Systems C. H. Tong, Sandia Report

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 47 of file QCgs.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::Qmr ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves a linear system by using Quasi-Minimal Residual (QMR).

Solves the unsymmetric linear system Ax = b using the Quasi-Minimal Residual method.

See: R. W. Freund and N. M. Nachtigal, A quasi-minimal residual method for non-Hermitian linear systems, Numerical Math., 60(1991), pp. 315-339

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 42 of file Qmr.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::QmrSym ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves linear system using Symmetric Quasi-Minimal Residual (SQMR).

Solves the symmetric linear system Ax = b using the Quasi-Minimal Residual method.

See: R. W. Freund and N. M. Nachtigal, A quasi-minimal residual method for non-Hermitian linear systems, Numerical Math., 60(1991), pp. 315-339

Parameters:
[in] A Complex Symmetric Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Right hand side of the linear system
[in] M Left preconditioner
[in] iter Iteration parameters

Definition at line 42 of file QmrSym.cxx.

template<class T , class Storage , class Allocator >
void Seldon::QuickSort ( int  m,
int  n,
Vector< T, Storage, Allocator > &  t 
)

Vector t is sorted by using QuickSort algorithm.

Sorts array t between position m and n.

Definition at line 104 of file Functions_Arrays.cxx.

template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::QuickSort ( int  m,
int  n,
Vector< T1, Storage1, Allocator1 > &  t1,
Vector< T2, Storage2, Allocator2 > &  t2 
)

Vector t1 is sorted by using QuickSort algorithm.

Sorts array t2 between position m and n, the sorting operation affects vector t2.

Definition at line 165 of file Functions_Arrays.cxx.

template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Seldon::QuickSort ( int  m,
int  n,
Vector< T1, Storage1, Allocator1 > &  t1,
Vector< T2, Storage2, Allocator2 > &  t2,
Vector< T3, Storage3, Allocator3 > &  t3 
)

Vector t1 is sorted by using QuickSort algorithm.

Sorts array t1 between position m and n, the sorting operation affects vectors t2 and t3.

Definition at line 235 of file Functions_Arrays.cxx.

template<class T , class Prop , class Storage , class Allocator >
void Seldon::ReadHarwellBoeing ( string  filename,
string  value_type,
string  matrix_type,
Matrix< T, Prop, Storage, Allocator > &  A 
)

Reads a sparse matrix in a file in Harwell-Boeing format.

This functions was written to read the files in Harwell-Boeing format as distributed on the Matrix Market, http://math.nist.gov/MatrixMarket/. A file from Matrix Market is associated with a type encoded in three characters (which is usually its extension). The supported types have:

  • 'R' (real) or 'P' (pattern) as first character; complex-valued matrices ('C') are not supported;
  • 'U' (unsymmetric) or 'R' (rectangular) as second character; 'S' (symmetric), 'H' (Hermitian) and 'Z' (skew symmetric) are not supported;
  • 'A' (assembled) as third character; 'E' (elemental) is not supported.
    Parameters:
    [in] filename path to the file that contains the matrix.
    [in] value_type the type of involved data: only "real" is supported.
    [in] matrix_type the type of matrix: only "general" is supported.
    [out] A the matrix to be structured and filled with the values of filename.
    Note:
    This function is not supposed to be called directly unless the user knows what he/she is doing. See overloaded functions ReadHarwellBoeing with only filename and A as arguments.
template<class Prop , class Allocator >
void Seldon::ReadHarwellBoeing ( string  filename,
Matrix< float, Prop, ColSparse, Allocator > &  A 
)

Reads a sparse matrix in a file in Harwell-Boeing format.

This functions was written to read the files in Harwell-Boeing format as distributed on the Matrix Market, http://math.nist.gov/MatrixMarket/. A file from Matrix Market is associated with a type encoded in three characters (which is usually its extension). The supported types have:

  • 'R' (real) or 'P' (pattern) as first character; complex-valued matrices ('C') are not supported;
  • 'U' (unsymmetric) or 'R' (rectangular) as second character; 'S' (symmetric), 'H' (Hermitian) and 'Z' (skew symmetric) are not supported;
  • 'A' (assembled) as third character; 'E' (elemental) is not supported.
    Parameters:
    [in] filename path to the file that contains the matrix.
    [out] A the matrix to be structured and filled with the values of filename.
template<class Prop , class Allocator >
void Seldon::ReadHarwellBoeing ( string  filename,
Matrix< double, Prop, ColSparse, Allocator > &  A 
)

Reads a sparse matrix in a file in Harwell-Boeing format.

This functions was written to read the files in Harwell-Boeing format as distributed on the Matrix Market, http://math.nist.gov/MatrixMarket/. A file from Matrix Market is associated with a type encoded in three characters (which is usually its extension). The supported types have:

  • 'R' (real) or 'P' (pattern) as first character; complex-valued matrices ('C') are not supported;
  • 'U' (unsymmetric) or 'R' (rectangular) as second character; 'S' (symmetric), 'H' (Hermitian) and 'Z' (skew symmetric) are not supported;
  • 'A' (assembled) as third character; 'E' (elemental) is not supported.
    Parameters:
    [in] filename path to the file that contains the matrix.
    [out] A the matrix to be structured and filled with the values of filename.
template<class T , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::RemoveDuplicate ( Vector< T, Storage1, Allocator1 > &  Node,
Vector< T2, Storage2, Allocator2 > &  Node2 
)

Sorts and removes duplicate entries of a vector.

Sorting operations of Node also affect Node2.

Definition at line 605 of file Functions_Arrays.cxx.

template<class T , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::RemoveDuplicate ( int &  n,
Vector< T, Storage1, Allocator1 > &  Node,
Vector< T2, Storage2, Allocator2 > &  Node2 
)

Sorts and removes duplicate entries of a vector.

Sorting operations on Node also affect Node2.

Definition at line 570 of file Functions_Arrays.cxx.

template<class T1 , class Allocator1 , class Prop , class T2 , class Allocator2 >
void Seldon::ScaleLeftMatrix ( Matrix< T1, Prop, ArrayRowSymSparse, Allocator1 > &  A,
const Vector< T2, VectFull, Allocator2 > &  scale 
)

Each row is scaled.

We compute diag(S)*A where S = scale. In order to keep symmetry, the operation is performed on upper part of the matrix, considering that lower part is affected by this operation.

Definition at line 634 of file Permutation_ScalingMatrix.cxx.

template<class T1 , class Allocator1 , class Prop , class T2 , class Allocator2 >
void Seldon::ScaleLeftMatrix ( Matrix< T1, Prop, ArrayRowComplexSparse, Allocator1 > &  A,
const Vector< T2, VectFull, Allocator2 > &  scale 
)

Each row is scaled.

We compute diag(S)*A where S = scale.

Definition at line 673 of file Permutation_ScalingMatrix.cxx.

template<class T1 , class Allocator1 , class Prop , class T2 , class Allocator2 >
void Seldon::ScaleLeftMatrix ( Matrix< T1, Prop, ArrayRowSparse, Allocator1 > &  A,
const Vector< T2, VectFull, Allocator2 > &  scale 
)

Each row is scaled.

We compute diag(S)*A where S = scale.

Definition at line 616 of file Permutation_ScalingMatrix.cxx.

template<class T1 , class Allocator1 , class Prop , class T2 , class Allocator2 >
void Seldon::ScaleLeftMatrix ( Matrix< T1, Prop, ArrayRowSymComplexSparse, Allocator1 > &  A,
const Vector< T2, VectFull, Allocator2 > &  scale 
)

Each row is scaled.

We compute diag(S)*A where S = scale. In order to keep symmetry, the operation is performed on upper part of the matrix, considering that lower part is affected by this operation.

Definition at line 652 of file Permutation_ScalingMatrix.cxx.

template<class Prop , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class Allocator3 >
void Seldon::ScaleMatrix ( Matrix< T1, Prop, ArrayRowSymSparse, Allocator1 > &  A,
const Vector< T2, VectFull, Allocator2 > &  scale_left,
const Vector< T3, VectFull, Allocator3 > &  scale_right 
)

Each row and column are scaled.

We compute diag(scale_left)*A*diag(scale_right).

Definition at line 554 of file Permutation_ScalingMatrix.cxx.

template<class Prop , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class Allocator3 >
void Seldon::ScaleMatrix ( Matrix< T1, Prop, ArrayRowComplexSparse, Allocator1 > &  A,
const Vector< T2, VectFull, Allocator2 > &  scale_left,
const Vector< T3, VectFull, Allocator3 > &  scale_right 
)

Each row and column are scaled.

We compute diag(scale_left)*A*diag(scale_right).

Definition at line 594 of file Permutation_ScalingMatrix.cxx.

template<class Prop , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class Allocator3 >
void Seldon::ScaleMatrix ( Matrix< T1, Prop, ArrayRowSparse, Allocator1 > &  A,
const Vector< T2, VectFull, Allocator2 > &  scale_left,
const Vector< T3, VectFull, Allocator3 > &  scale_right 
)

Each row and column are scaled.

We compute diag(scale_left)*A*diag(scale_right).

Definition at line 536 of file Permutation_ScalingMatrix.cxx.

template<class Prop , class T1 , class Allocator1 , class T2 , class Allocator2 , class T3 , class Allocator3 >
void Seldon::ScaleMatrix ( Matrix< T1, Prop, ArrayRowSymComplexSparse, Allocator1 > &  A,
const Vector< T2, VectFull, Allocator2 > &  scale_left,
const Vector< T3, VectFull, Allocator3 > &  scale_right 
)

Each row and column are scaled.

We compute diag(scale_left)*A*diag(scale_right).

Definition at line 572 of file Permutation_ScalingMatrix.cxx.

template<class T >
void Seldon::SetComplexOne ( T &  number  )  [inline]

Sets a number to one.

Parameters:
[in,out] number number to be set to one.
template<class T >
void Seldon::SetComplexOne ( complex< T > &  number  )  [inline]

Sets a complex number to (1, 0).

Parameters:
[in,out] number complex number to be set to (1, 0).
template<class T >
void Seldon::SetComplexZero ( complex< T > &  number  )  [inline]

Sets a complex number to zero.

Parameters:
[in,out] number complex number to be set to zero.
template<class T >
void Seldon::SetComplexZero ( T &  number  )  [inline]

Sets a number to zero.

Parameters:
[in,out] number number to be set to zero.
template<class T , class Prop0 , class Allocator0 , class Allocator1 >
void Seldon::Solve ( Matrix< T, Prop0, RowSparse, Allocator0 > &  M,
Vector< T, VectFull, Allocator1 > &  Y 
)

Solves a sparse linear system using LU factorization.

This function solves $ M X = Y $ where $ M $ is a matrix, and $ X $ and $ Y $ are vectors.

Parameters:
[in] M the sparse matrix of the linear system, to be factorized in LU form by UMFPACK, SuperLU or Mumps. On exit, M is cleared.
[in,out] Y on entry, the right-hand side $ Y $; on exit, the solution $ X $ of the system.
template<class T , class Prop0 , class Allocator0 , class Allocator1 >
void Seldon::Solve ( Matrix< T, Prop0, ColSparse, Allocator0 > &  M,
Vector< T, VectFull, Allocator1 > &  Y 
)

Solves a sparse linear system using LU factorization.

This function solves $ M X = Y $ where $ M $ is a matrix, and $ X $ and $ Y $ are vectors.

Parameters:
[in] M the sparse matrix of the linear system, to be factorized in LU form by UMFPACK, SuperLU or Mumps. On exit, M is cleared.
[in,out] Y on entry, the right-hand side $ Y $; on exit, the solution $ X $ of the system.
template<class real , class cplx , class Allocator , class Storage2 , class Allocator2 >
void Seldon::SolveLU ( const Matrix< real, Symmetric, ArrayRowSymSparse, Allocator > &  A,
Vector< cplx, Storage2, Allocator2 > &  x 
)

Resolution of L D L^t y = x (result is overwritten in x).

The factor L^t is assumed to be stored in matrix A. The diagonal of A is equal to the inverse of diagonal D.

Definition at line 605 of file SymmetricIlutPreconditioning.cxx.

template<class real , class cplx , class Allocator , class Storage2 , class Allocator2 >
void Seldon::SolveLU ( const Matrix< real, General, ArrayRowSparse, Allocator > &  A,
Vector< cplx, Storage2, Allocator2 > &  x 
)

Resolution of LU y = x (x is overwritten with y).

L and U are assumed to be stored in A. The diagonal of A contains the inverse of the diagonal of U.

Definition at line 1238 of file IlutPreconditioning.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void Seldon::SolveLU ( const Matrix< T0, Prop0, Storage0, Allocator0 > &  M,
Vector< T1, Storage1, Allocator1 > &  Y 
)

Solves a linear system whose matrix has been LU-factorized.

This function solves $ M X = Y $ where $ M $ is a matrix, and $ X $ and $ Y $ are vectors. The matrix M cannot be provided as such to this function: it must already be factorized in LU form.

Parameters:
[in] M the matrix of the linear system, already factorized in LU form. The lower part of M should be L, and the upper part should be U. The diagonal of M should be the diagonal of U. The diagonal elements of L are assumed to be ones.
[in,out] Y on entry, the right-hand side $ Y $; on exit, the solution $ X $ of the system.
See also:
Seldon::GetLU(Matrix<T0, Prop0, Storage0, Allocator0>& A) to factorize a matrix before using this function.

Definition at line 1062 of file Functions_MatVect.cxx.

template<class Prop , class Storage , class Allocator >
void Seldon::SolveSylvester ( Matrix< double, Prop, Storage, Allocator > &  A,
Matrix< double, Prop, Storage, Allocator > &  B,
Matrix< double, Prop, Storage, Allocator > &  C,
Matrix< double, Prop, Storage, Allocator > &  D,
Matrix< double, Prop, Storage, Allocator > &  E 
)

Solves A X B^T + C X D^T = E, E is overwritten with result X. A, B, C and D are modified

Definition at line 4328 of file Lapack_Eigenvalues.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void Seldon::SOR ( const Matrix< T0, Prop0, RowComplexSparse, Allocator0 > &  A,
Vector< complex< T2 >, Storage2, Allocator2 > &  X,
const Vector< complex< T1 >, Storage1, Allocator1 > &  B,
const T3 &  omega,
int  iter,
int  type_ssor = 2 
)

Successive overrelaxation.

Solving A X = B by using S.O.R algorithm. omega is the relaxation parameter, iter the number of iterations. type_ssor = 2 forward sweep type_ssor = 3 backward sweep type_ssor = 0 forward and backward sweep

Definition at line 442 of file Relaxation_MatVect.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void Seldon::SOR ( const Matrix< T0, Prop0, RowSymComplexSparse, Allocator0 > &  A,
Vector< complex< T2 >, Storage2, Allocator2 > &  X,
const Vector< complex< T1 >, Storage1, Allocator1 > &  B,
const T3 &  omega,
int  iter,
int  type_ssor = 2 
)

Successive overrelaxation.

Solving A X = B by using S.O.R algorithm. omega is the relaxation parameter, iter the number of iterations. type_ssor = 2 forward sweep type_ssor = 3 backward sweep type_ssor = 0 forward and backward sweep

Definition at line 598 of file Relaxation_MatVect.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void Seldon::SOR ( const Matrix< T0, Prop0, ArrayRowSparse, Allocator0 > &  A,
Vector< T2, Storage2, Allocator2 > &  X,
const Vector< T1, Storage1, Allocator1 > &  B,
const T3 &  omega,
int  iter,
int  type_ssor = 2 
)

Successive overrelaxation.

Solving A X = B by using S.O.R algorithm. omega is the relaxation parameter, iter the number of iterations. type_ssor = 2 forward sweep type_ssor = 3 backward sweep type_ssor = 0 forward and backward sweep

Definition at line 109 of file Relaxation_MatVect.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void Seldon::SOR ( const Matrix< T0, Prop0, ArrayRowSymComplexSparse, Allocator0 > &  A,
Vector< complex< T2 >, Storage2, Allocator2 > &  X,
const Vector< complex< T1 >, Storage1, Allocator1 > &  B,
const T3 &  omega,
int  iter,
int  type_ssor = 2 
)

Successive overrelaxation.

Solving A X = B by using S.O.R algorithm. omega is the relaxation parameter, iter the number of iterations. type_ssor = 2 forward sweep type_ssor = 3 backward sweep type_ssor = 0 forward and backward sweep

Definition at line 779 of file Relaxation_MatVect.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void Seldon::SOR ( const Matrix< T0, Prop0, RowSymSparse, Allocator0 > &  A,
Vector< T2, Storage2, Allocator2 > &  X,
const Vector< T1, Storage1, Allocator1 > &  B,
const T3 &  omega,
int  iter,
int  type_ssor = 2 
)

Successive overrelaxation.

Solving A X = B by using S.O.R algorithm. omega is the relaxation parameter, iter the number of iterations. type_ssor = 2 forward sweep type_ssor = 3 backward sweep type_ssor = 0 forward and backward sweep

Definition at line 179 of file Relaxation_MatVect.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void Seldon::SOR ( const Matrix< T0, Prop0, ArrayRowComplexSparse, Allocator0 > &  A,
Vector< complex< T2 >, Storage2, Allocator2 > &  X,
const Vector< complex< T1 >, Storage1, Allocator1 > &  B,
const T3 &  omega,
int  iter,
int  type_ssor = 2 
)

Successive overrelaxation.

Solving A X = B by using S.O.R algorithm. omega is the relaxation parameter, iter the number of iterations. type_ssor = 2 forward sweep type_ssor = 3 backward sweep type_ssor = 0 forward and backward sweep

Definition at line 515 of file Relaxation_MatVect.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void Seldon::SOR ( const Matrix< T0, Prop0, ArrayRowSymSparse, Allocator0 > &  A,
Vector< T2, Storage2, Allocator2 > &  X,
const Vector< T1, Storage1, Allocator1 > &  B,
const T3 &  omega,
int  iter,
int  type_ssor = 2 
)

Successive overrelaxation.

Solving A X = B by using S.O.R algorithm. omega is the relaxation parameter, iter the number of iterations. type_ssor = 2 forward sweep type_ssor = 3 backward sweep type_ssor = 0 forward and backward sweep

Definition at line 312 of file Relaxation_MatVect.cxx.

template<class T0 , class Prop0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 >
void Seldon::SOR ( const Matrix< T0, Prop0, RowSparse, Allocator0 > &  A,
Vector< T2, Storage2, Allocator2 > &  X,
const Vector< T1, Storage1, Allocator1 > &  B,
const T3 &  omega,
int  iter,
int  type_ssor = 2 
)

Successive overrelaxation.

Solving A X = B by using S.O.R algorithm. omega is the relaxation parameter, iter the number of iterations. type_ssor = 2 forward sweep type_ssor = 3 backward sweep type_ssor = 0 forward and backward sweep

Definition at line 44 of file Relaxation_MatVect.cxx.

template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::Sort ( Vector< T1, Storage1, Allocator1 > &  V,
Vector< T2, Storage2, Allocator2 > &  V2 
)

Sorts vector V.

The sorting operation of V also affects V2.

Definition at line 717 of file Functions_Arrays.cxx.

template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Seldon::Sort ( int  n,
Vector< T1, Storage1, Allocator1 > &  V,
Vector< T2, Storage2, Allocator2 > &  V2,
Vector< T3, Storage3, Allocator3 > &  V3 
)

Sorts the n first elements of V.

The sorting operation of V also affects V2 and V3.

Definition at line 695 of file Functions_Arrays.cxx.

template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Seldon::Sort ( Vector< T1, Storage1, Allocator1 > &  V,
Vector< T2, Storage2, Allocator2 > &  V2,
Vector< T3, Storage3, Allocator3 > &  V3 
)

Sorts vector V.

The sorting operation of V also affects V2 and V3.

Definition at line 731 of file Functions_Arrays.cxx.

template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::Sort ( int  m,
int  n,
Vector< T1, Storage1, Allocator1 > &  V,
Vector< T2, Storage2, Allocator2 > &  V2 
)

Sorts vector V between a start position and an end position.

The sorting operation of V also affects V2.

Definition at line 645 of file Functions_Arrays.cxx.

template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 >
void Seldon::Sort ( int  n,
Vector< T1, Storage1, Allocator1 > &  V,
Vector< T2, Storage2, Allocator2 > &  V2 
)

Sorts the n first elements of V.

The sorting operation of V also affects V2.

Definition at line 681 of file Functions_Arrays.cxx.

template<class T1 , class Storage1 , class Allocator1 , class T2 , class Storage2 , class Allocator2 , class T3 , class Storage3 , class Allocator3 >
void Seldon::Sort ( int  m,
int  n,
Vector< T1, Storage1, Allocator1 > &  V,
Vector< T2, Storage2, Allocator2 > &  V2,
Vector< T3, Storage3, Allocator3 > &  V3 
)

Sorts vector V between a start position and an end position.

The sorting operation of V also affects V2 and V3.

Definition at line 659 of file Functions_Arrays.cxx.

template<class T0 , class Prop0 , class Storage0 , class Allocator0 , class T1 , class Storage1 , class Allocator1 >
void Seldon::SparseSolve ( Matrix< T0, Prop0, Storage0, Allocator0 > &  M,
Vector< T1, Storage1, Allocator1 > &  Y 
)

Solves a sparse linear system using LU factorization.

This function solves $ M X = Y $ where $ M $ is a matrix, and $ X $ and $ Y $ are vectors.

Parameters:
[in] M the sparse matrix of the linear system, to be factorized in LU form by UMFPACK, SuperLU or Mumps. On exit, M is cleared.
[in,out] Y on entry, the right-hand side $ Y $; on exit, the solution $ X $ of the system.
template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::Symmlq ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves a linear system by using Symmetric LQ (SymmLQ).

Solves the real symmetric linear system Ax = b with restarted Preconditioned Symmetric LQ Algorithm.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See C. PAIGE AND M. SAUNDERS, Solution of sparse indefinite systems of linear equations, SIAM J. Numer. Anal., 12 (1975), pp. 617-629.

Parameters:
[in] A Real Symmetric Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 46 of file Symmlq.cxx.

template<class Titer , class Matrix1 , class Vector1 , class Preconditioner >
int Seldon::TfQmr ( Matrix1 &  A,
Vector1 &  x,
const Vector1 &  b,
Preconditioner &  M,
Iteration< Titer > &  iter 
)

Solves a linear system by using Transpose Free Quasi-Minimal Residual.

Solves the unsymmetric linear system Ax = b using TFQMR.

return value of 0 indicates convergence within the maximum number of iterations (determined by the iter object). return value of 1 indicates a failure to converge.

See: R. W. Freund, A Transpose-Free Quasi-Minimal Residual algorithm for non-Hermitian linear system. SIAM J. on Sci. Comp. 14(1993), pp. 470-482

Parameters:
[in] A Complex General Matrix
[in,out] x Vector on input it is the initial guess on output it is the solution
[in] b Vector right hand side of the linear system
[in] M Right preconditioner
[in] iter Iteration parameters

Definition at line 45 of file TfQmr.cxx.

template<class T >
T Seldon::to_num ( std::string  s  ) 

Converts string to most types, specially numbers.

Parameters:
[in] s string to be converted.
Returns:
s converted to 'T'.
template<class T >
void Seldon::to_num ( std::string  s,
T &  num 
)

Converts string to most types, specially numbers.

Parameters:
[in] s string to be converted.
[out] num s converted to 'T'.
template<typename T >
std::string Seldon::to_str ( const T &  input  ) 

Converts most types to string.

Parameters:
input variable to be converted.
Returns:
A string containing 'input'.