20 std::complex<double> *
c=
nullptr;
23 ComplexMatrix(
const int nrows,
const int ncols,
const bool flag_zero=
true);
29 void create(
const int nrow,
const int ncol,
const bool flag_zero=
true);
36 std::complex<double> &
operator()(
const int ir,
const int ic)
38 assert(ir>=0); assert(ir<
nr); assert(ic>=0); assert(ic<
nc);
41 const std::complex<double> &
operator()(
const int ir,
const int ic)
const
43 assert(ir>=0); assert(ir<
nr); assert(ic>=0); assert(ic<
nc);
61 std::ostream &
print( std::ostream & os,
const double threshold_abs=0.0,
const double threshold_imag=0.0 )
const;
66 using type=std::complex<double>;
97 const std::complex<double> &s,
104 const std::complex<double> &s,
110 const std::complex<double> &s1,
112 const std::complex<double> &s2,
119 const std::complex<double> &s1,
121 const std::complex<double> &s2,
#define min(x, y)
Definition branred.cpp:18
Definition complexmatrix.h:13
std::complex< double > type
Definition complexmatrix.h:66
ComplexMatrix & operator=(const ComplexMatrix &m)
Definition complexmatrix.cpp:226
void set_as_identity_matrix(void)
Definition complexmatrix.cpp:129
void zero_out(void)
Definition complexmatrix.cpp:30
const std::complex< double > & operator()(const int ir, const int ic) const
Definition complexmatrix.h:41
~ComplexMatrix()
Definition complexmatrix.cpp:86
int nr
Definition complexmatrix.h:17
void create(const int nrow, const int ncol, const bool flag_zero=true)
Definition complexmatrix.cpp:96
matrix real() const
Definition complexmatrix.cpp:265
std::complex< double > & operator()(const int ir, const int ic)
Definition complexmatrix.h:36
std::complex< double > * c
Definition complexmatrix.h:20
bool checkreal(void) const
Definition complexmatrix.cpp:441
ComplexMatrix & operator-=(const ComplexMatrix &m)
Definition complexmatrix.cpp:258
ComplexMatrix & operator+=(const ComplexMatrix &m)
Definition complexmatrix.cpp:251
std::ostream & print(std::ostream &os, const double threshold_abs=0.0, const double threshold_imag=0.0) const
Definition complexmatrix.cpp:417
int nc
Definition complexmatrix.h:18
ComplexMatrix & operator*=(const std::complex< double > &s)
Definition complexmatrix.cpp:244
int size
Definition complexmatrix.h:19
ComplexMatrix()
Definition complexmatrix.h:22
Definition clebsch_gordan_coeff.cpp:8
ComplexMatrix operator-(const ComplexMatrix &m1, const ComplexMatrix &m2)
Definition complexmatrix.cpp:154
ComplexArray operator*(const double r, const ComplexArray &cd)
Scale a ComplexArray cd by real r.
Definition complexarray.cpp:173
double abs2(const ComplexArray &cd)
Sum of absolute squares of all elements in cd.
Definition complexarray.cpp:336
std::complex< double > trace(const ComplexMatrix &m)
Definition complexmatrix.cpp:273
double abs2_column(const ComplexMatrix &m, const int ic)
Definition complexmatrix.cpp:357
double abs2_row(const ComplexMatrix &m, const int ir)
Definition complexmatrix.cpp:345
void scaled_sum(double r1, const ComplexArray &cd1, double r2, const ComplexArray &cd2, ComplexArray &cd3)
Does cd3 = r1*cd1 + r2*cd2.
Definition complexarray.cpp:385
ComplexMatrix transpose(const ComplexMatrix &m, const bool &conjugate)
Definition complexmatrix.cpp:394
void scale_accumulate(double r, const ComplexArray &cd1, ComplexArray &cd2)
Does cd2 += r * cd1.
Definition complexarray.cpp:367
ComplexMatrix operator+(const ComplexMatrix &m1, const ComplexMatrix &m2)
Definition complexmatrix.cpp:143
ComplexMatrix conj(const ComplexMatrix &m)
Definition complexmatrix.cpp:408