10 #define NEWMATRM_LIB 0 24 #ifdef use_namespace // to make namespace work 32 : store(st), n(nx), spacing(sp), shift(sh) {}
34 { store=st; n=nx; spacing=sp; shift=sh; }
45 void DownDiag() { store += (shift+spacing); n--; }
46 void UpDiag() { store -= (shift+spacing); n++; }
59 void Reset(
const Matrix&,
int,
int,
int);
60 void Reset(
const Matrix&,
int);
62 void Down() { store += shift; }
64 void Up() { store -= shift; }
65 void Left() { store--; n++; }
76 void Reset(
const Matrix&,
int,
int,
int);
77 void Reset(
const Matrix&,
int);
78 void Down() { store += spacing; n--; }
80 void Up() { store -= spacing; n++; }
104 (
const Matrix& M,
int row,
int skip,
int length)
111 (
const Matrix& M,
int skip,
int col,
int length)
119 {
return (y>=0) ? x : -x; }
129 Real tmp0 = cGivens * x + sGivens * y;
130 Real tmp1 = -sGivens * x + cGivens * y;
138 Real tmp0 = cGivens * x + sGivens * y;
139 Real tmp1 = sGivens * x - cGivens * y;
void GivensRotation(Real cGivens, Real sGivens, Real &x, Real &y)
void GivensRotationR(Real cGivens, Real sGivens, Real &x, Real &y)
Real sign(Real x, Real y)
void Reset(Real *st, int nx, int sp, int sh)
void Rotate(RectMatrixCol &U, RectMatrixCol &V, Real tau, Real s)
#define FREE_CHECK(Class)
Real SumSquare(const BaseMatrix &B)
Real pythag(Real f, Real g, Real &c, Real &s)
RectMatrixDiag(const DiagonalMatrix &D)
RectMatrixRow(const Matrix &, int, int, int)
RectMatrixCol(const Matrix &, int, int, int)
void ComplexScale(RectMatrixCol &U, RectMatrixCol &V, Real x, Real y)
RectMatrixRowCol(Real *st, int nx, int sp, int sh)
ScaledMatrix operator*(Real f, const BaseMatrix &BM)
The usual rectangular matrix.