34 _Mat = m_get( NoLin, NoCol );
86 std::cerr <<
" !! Trying two multiply two matrices when the number of columns of first one is not equal to number of files of second one " << std::endl;
92 m_transp(
_Mat, tempmat);
106 std::cerr <<
"!!!! cannot sum two matrices with different size" << std::endl
111 m_copy(
_Mat, tempmat);
137 std::cerr <<
" !! Trying two multiply two matrices when the number of columns of first one is not equal to number of files of second one " << std::endl;
178 << mat2.
Mat()->m << mat2.
Mat()->n
179 << matout.
Mat()->m << matout.
Mat()->n << std::endl;
190 matout += (-1 * matout2);
232 m_transp(
_Mat, tempmat );
259 (*this) *= 1./factor;
260 m_inverse(
_Mat, tempmat );
261 m_copy( tempmat,
_Mat );
262 (*this) *= 1./factor;
270 if ( lin >=
_Mat->m || col >=
_Mat->n ) {
273 std::cerr <<
"EXITING: matrix has only " <<
_Mat->m <<
" lines and " 274 <<
_Mat->n <<
" columns " << std::endl;
275 std::cerr <<
" You tried to add data in line " << lin <<
" and column " 287 return _Mat->me[
i][j];
297 if ( lin_last < lin_first ) {
298 std::cerr <<
"EXITING: cannot Eliminate Lines in matrix if first line is " <<
299 lin_first <<
" and lastt line is " << lin_last << std::endl;
303 ALIint dif = (lin_last - lin_first) + 1;
309 if( ii < lin_first || ii > lin_last ) {
318 _Mat = m_get( newANolin, newANocol );
331 if ( lin_last < lin_first ) {
332 std::cerr <<
"EXITING: cannot Eliminate Lines in matrix if first line is " <<
333 lin_first <<
" and lastt line is " << lin_last << std::endl;
337 ALIint dif = (lin_last - lin_first) + 1;
343 if( jj < lin_first || jj > lin_last ) {
352 _Mat = m_get( newANolin, newANocol );
369 fout <<
"DUMPM@@@@@ " << mtext <<
" @@@@@" << std::endl;
370 fout <<
"Matrix is (_Mat)" <<
_Mat->m <<
"x" <<
_Mat->n << std::endl;
374 fout << std::setw(8) <<
_Mat->me[
ii][
jj] <<
" ";
386 AddData(i1,i2,corr *
sqrt( (*
this)(i1,i1)*(*
this)(i2,i2) ) );
387 AddData(i2,i1,corr *
sqrt( (*
this)(i1,i1)*(*
this)(i2,i2) ) );
388 if(
ALIUtils::debug >= 9)
std::cout << i1<< i2<< corr <<
"CORR" << (*this)(i1,i1) <<
" " << (*
this)(i2,i2) << std::endl;
400 std::cerr <<
" !! Trying two multiply two matrices when the number of columns of first one is not equal to number of files of second one " << std::endl;
void copy(const MatrixMeschach &mat)
ALIdouble operator()(int i, int j) const
MatrixMeschach operator+(const MatrixMeschach &mat1, const MatrixMeschach &mat2)
void EliminateLines(ALIint lin_first, ALIint lin_last)
void operator+=(const MatrixMeschach &mat)
void SetCorrelation(ALIint i1, ALIint i2, ALIdouble corr)
void EliminateColumns(ALIint lin_first, ALIint lin_last)
MAT * MatNonConst() const
void ostrDump(std::ostream &fout, const ALIstring &mtext)
void AddData(ALIuint col, ALIuint lin, ALIdouble data)
void setNoColumns(ALIint ncol)
char data[epos_bytes_allocation]
void operator*=(const MatrixMeschach &mat)
MatrixMeschach operator*(const MatrixMeschach &mat1, const MatrixMeschach &mat2)
MatrixMeschach operator-(const MatrixMeschach &mat1, const MatrixMeschach &mat2)
MatrixMeschach & operator=(const MatrixMeschach &mat)
MatrixMeschach * MatrixByMatrix(const MatrixMeschach &mat1, const MatrixMeschach &mat2)
void Dump(const ALIstring &mtext)