6 #ifndef MYRAMATH_MULTIFRONTAL_ZCHOLESKY_KERNEL_H 7 #define MYRAMATH_MULTIFRONTAL_ZCHOLESKY_KERNEL_H 22 #include <myramath/dense/detail/nwork.h> 31 template<
class Number>
class MatrixRange;
32 template<
class Number>
class LowerMatrix;
40 typedef std::complex<Precision> Number;
60 {
return potrf_nwork(L); }
66 {
return trsm_nwork(side,op,L,B); }
70 {
return std::pair<int,int>(size(),0); }
84 {
public:
typedef std::complex<Precision> type; };
uint64_t solveL(const MatrixRange< Number > &B, char side, char op) const
Solves op(L)*X=B or X*op(L)=B, overwrites B with X.
Definition: Kernel.h:65
Reflects Number trait for a Container, containers of Numbers (Matrix's, Vector's, etc) should special...
Definition: Number.h:55
Cholesky factorization routines for positive definite matrices.
int size() const
Size inspector.
Definition: Kernel.h:73
Represents a mutable LowerMatrixRange.
Definition: conjugate.h:28
ReaderWriter<T>, encapsulates a read()/write() pair for type T.
std::pair< int, int > inertia() const
Returns inertia I, (n_plus, n_minus). Useful for schur downdates.
Definition: Kernel.h:69
Range construct for a lower triangular matrix stored in rectangular packed format.
ZCholeskyKernel()
Default constructor, initializes to 0 size.
Definition: Kernel.h:43
Routines for backsolving by a triangular Matrix or LowerMatrix.
Abstraction layer, serializable objects write themselves to these.
Definition: Streams.h:39
Various utility functions/classes related to scalar Number types.
Represents a mutable MatrixRange.
Definition: conjugate.h:26
void write(OutputStream &out) const
Writes to an OutputStream.
Definition: Kernel.h:55
uint64_t factor()
Factors A = L*L'.
Definition: Kernel.h:59
ZCholeskyKernel(LowerMatrixRange< Number > &A, InputStream &in)
Constructs from an InputStream, after seating reference to L.
Definition: Kernel.h:51
Factors A into L*L', presents solve methods.
Definition: Kernel.h:35
Bases classes for binary input/output streams.
ZCholeskyKernel(LowerMatrixRange< Number > &A)
Seats reference to L, to be factor()'d later.
Definition: Kernel.h:47