6 std::cerr <<
"# [MARK] dsymatrix::complete() const"
10 for(
long i=0;
i<N;
i++){
11 for(
long j=0; j<
i; j++){
12 Darray[
i][j] =Darray[j][
i];
22 std::cerr <<
"# [MARK] dsymatrix::clear()"
27 std::cerr <<
"# [NOTE] dsymatrix::clear() "
28 <<
" An array at " <<
Array
29 <<
" is going to be cleared." << std::endl;
44 std::cerr <<
"# [MARK] dsymatrix::zero()"
48 for(
long i=0;
i<N*N;
i++){
Array[
i] =0.0; }
56 std::cerr <<
"# [MARK] dsymatrix::identity()"
60 for(
long i=0;
i<N*N;
i++){
Array[
i] =0.0; }
69 std::cerr <<
"# [MARK] dsymatrix::chsign()"
81 std::cerr <<
"# [MARK] dsymatrix::copy(const dsymatrix&)"
86 std::cerr <<
"# [NOTE] dsymatrix::copy(const dsymatrix&) "
87 <<
"A dsymatrix at " <<
Array <<
" is going to be deleted.";
92 Array =
new double[N*N];
94 Darray =
new double*[N];
95 for(
int i=0;
i<N;
i++){ Darray[
i] =&Array[
i*N]; }
97 dcopy_(mat.N*mat.N, mat.Array, 1, Array, 1);
100 std::cerr <<
" Then, a COPY of a dsymatrix has been cleated at "
101 << Array <<
"." << std::endl;
111 std::cerr <<
"# [MARK] dsymatrix::shallow_copy(const _dsymatrix&)"
116 std::cerr <<
"# [NOTE] dsymatrix:shallow_copy(const _dsymatrix&) "
117 <<
"A dsymatrix at " << Array <<
" is going to be deleted, "
118 <<
"and point at " << mat.
Array <<
" instead." << std::endl;
133 std::cerr <<
"# [MARK] dsymatrix::resize(const long&)"
139 std::cerr <<
"[ERROR] dsymatrix::resize(const long&, const long&)"
141 <<
"Matrix sizes must be positive integers." << std::endl
142 <<
"Your input was (" << _n <<
")." << std::endl;
149 Array =
new double[N*N];
151 Darray =
new double*[N];
152 for(
int i=0;
i<N;
i++){ Darray[
i] =&Array[
i*N]; }
160 std::cerr <<
"# [MARK] swap(dsymatrix&, dsymatrix&)"
165 double* A_array(A.Array);
166 double** A_darray = A.Darray;
167 A.N=B.N; A.Array=B.Array; A.Darray=B.Darray;
168 B.N=A_n; B.Array=A_array; B.Darray=A_darray;
176 std::cerr <<
"# [MARK] _(dsymatrix&)"
183 newmat.
Array =mat.Array;
184 newmat.
Darray =mat.Darray;
void identity()
Definition: dsymatrix-misc.hpp:53
friend _dgematrix i(const dsymatrix &)
Definition: dsymatrix-calc.hpp:22
double * Array
1D Array to store vector data
Definition: _drovector.hpp:8
void zero()
Definition: dsymatrix-misc.hpp:41
double * Array
1D Array to store matrix data
Definition: _dsymatrix.hpp:8
Real Double-precision Symmetric Matrix Class [L-type (UPLO=L) Strage].
Definition: dsymatrix.hpp:3
double ** Darray
array of pointers of column head addresses
Definition: _dsymatrix.hpp:9
void chsign()
Definition: dsymatrix-misc.hpp:66
void clear()
Definition: dsymatrix-misc.hpp:19
void shallow_copy(const _dsymatrix &)
Definition: dsymatrix-misc.hpp:108
long N
matrix column or row size
Definition: _dsymatrix.hpp:7
(DO NOT USE) Smart-temporary Real Double-precision Symmetric Matrix Class
Definition: _dsymatrix.hpp:3
void complete() const
Definition: dsymatrix-misc.hpp:3
double & operator()(const long &, const long &)
Definition: dsymatrix-io.hpp:3
void copy(const dsymatrix &)
Definition: dsymatrix-misc.hpp:78
void resize(const long &)
Definition: dsymatrix-misc.hpp:130