63 int lin,
const char *
func,
const char *file)
71 virtual const char*
what()
const throw() {
78 out <<
"LinAlgException: msg='";
79 if (
e.msg) out <<
e.msg;
81 if (
e.assertion) out <<
" failed assertion='" <<
83 out <<
" value=" <<
e.value <<
"\n";
84 if (
e.line) out <<
" line=" <<
e.line <<
"\n";
85 if (
e.function) out <<
" function='" <<
87 if (
e.filename) out <<
" filename='" <<
97 #define LINALG_STRINGIZE(X) #X
98 #define LINALG_EXCEPTION_AT(F, L) LINALG_STRINGIZE(F) "(" LINALG_STRINGIZE(L) ")"
100 #define LINALG_EXCEPTION(msg,value) \
101 throw ::madness::LinAlgException("LINALG EXCEPTION: " LINALG_EXCEPTION_AT( __FILE__, __LINE__ ) ": " msg , \
102 0,value,__LINE__,__FUNCTION__,__FILE__)
104 #define LINALG_ASSERT(condition,msg,value) \
105 do {if (!(condition)) \
106 throw ::madness::LinAlgException("LINALG ASSERTION FAILED: " LINALG_EXCEPTION_AT( __FILE__, __LINE__ ) ": " msg , \
107 #condition,value,__LINE__,__FUNCTION__,__FILE__); \
C++ interface to LAPACK, either directly via Fortran API (see clapack_fortran.h) or via LAPACKE (see ...
Definition: test_ar.cc:118
Definition: test_ar.cc:141
Linear algebra Exception.
Definition: linalg_wrappers.h:53
virtual ~LinAlgException()
Definition: linalg_wrappers.h:75
const char * filename
Definition: linalg_wrappers.h:59
const char * msg
Definition: linalg_wrappers.h:54
LinAlgException(const char *s, const char *a, int err, int lin, const char *func, const char *file)
Definition: linalg_wrappers.h:62
const char * assertion
Definition: linalg_wrappers.h:55
virtual const char * what() const
Definition: linalg_wrappers.h:71
const char * function
Definition: linalg_wrappers.h:58
int line
Definition: linalg_wrappers.h:57
friend std::ostream & operator<<(std::ostream &out, const LinAlgException &e)
Definition: linalg_wrappers.h:77
int value
Definition: linalg_wrappers.h:56
int integer
Definition: crayio.c:25
Correspondence between C++ and Fortran types.
const double m
Definition: gfit.cc:199
auto T(World &world, response_space &f) -> response_space
Definition: global_functions.cc:34
File holds all helper structures necessary for the CC_Operator and CC2 class.
Definition: DFParameters.h:10
void cholesky(Tensor< T > &A)
Compute the Cholesky factorization.
Definition: lapack.cc:1174
void hereig(char jobz, char uplo, integer n, real4 *A, integer lda, real4 *W)
Definition: linalg_wrappers.cc:171
std::shared_ptr< FunctionFunctorInterface< double, 3 > > func(new opT(g))
void svd(const Tensor< T > &a, Tensor< T > &U, Tensor< typename Tensor< T >::scalar_type > &s, Tensor< T > &VT)
Compute the singluar value decomposition of an n-by-m matrix using *gesvd.
Definition: lapack.cc:739
void hereig_gen(integer itype, char jobz, char uplo, integer n, real4 *A, integer lda, real4 *B, integer ldb, real4 *W)
Definition: linalg_wrappers.cc:312
static const double a
Definition: nonlinschro.cc:118
T type
Definition: linalg_wrappers.h:21
Definition: linalg_wrappers.h:15
T type
Definition: linalg_wrappers.h:16
void e()
Definition: test_sig.cc:75