21 std::complex<double> *
c=
nullptr;
24 ComplexMatrix(
const int nrows,
const int ncols,
const bool flag_zero=
true);
30 void create(
const int nrow,
const int ncol,
const bool flag_zero=
true);
37 std::complex<double> &
operator()(
const int ir,
const int ic)
39 assert(ir>=0); assert(ir<
nr); assert(ic>=0); assert(ic<
nc);
42 const std::complex<double> &
operator()(
const int ir,
const int ic)
const
44 assert(ir>=0); assert(ir<
nr); assert(ic>=0); assert(ic<
nc);
62 std::ostream &
print( std::ostream & os,
const double threshold_abs=0.0,
const double threshold_imag=0.0 )
const;
67 using type=std::complex<double>;
98 const std::complex<double> &s,
105 const std::complex<double> &s,
111 const std::complex<double> &s1,
113 const std::complex<double> &s2,
120 const std::complex<double> &s1,
122 const std::complex<double> &s2,
#define min(x, y)
Definition branred.cpp:18
Definition complexmatrix.h:14
std::complex< double > type
Definition complexmatrix.h:67
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:42
~ComplexMatrix()
Definition complexmatrix.cpp:86
bool checkreal(void)
Definition complexmatrix.cpp:441
int nr
Definition complexmatrix.h:18
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:37
std::complex< double > * c
Definition complexmatrix.h:21
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:19
ComplexMatrix & operator*=(const std::complex< double > &s)
Definition complexmatrix.cpp:244
int size
Definition complexmatrix.h:20
ComplexMatrix()
Definition complexmatrix.h:23
Definition array_pool.h:6
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:120
double abs2(const ComplexArray &cd)
Sum of absolute squares of all elements in cd.
Definition complexarray.cpp:206
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:241
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:229
ComplexMatrix operator+(const ComplexMatrix &m1, const ComplexMatrix &m2)
Definition complexmatrix.cpp:143
ComplexMatrix conj(const ComplexMatrix &m)
Definition complexmatrix.cpp:408