class matrix {
private:
int row, col;
int sparse;
double **y;
public:
matrix(int n = 1, int m = 1, int s = 0);
matrix(const matrix &);
~matrix();
matrix operator+(const matrix & a) const;
matrix operator-(const matrix & a) const;
void print();
double & operator()(int n, int m) const;
double & operator()(int n) const;
matrix operator=(const matrix &a);
matrix operator*(const matrix &a) const;
matrix operator|(const matrix &b) const;
matrix operator+(); //unary operator for upper triangulation
double det();
double norm() const;
matrix column(int);
friend matrix operator*(double, matrix &);
friend matrix operator*(matrix &, double);
friend int eigJ(matrix &a, double eps, double *, matrix &);
};
// end class matrix
private:
int row, col;
int sparse;
double **y;
public:
matrix(int n = 1, int m = 1, int s = 0);
matrix(const matrix &);
~matrix();
matrix operator+(const matrix & a) const;
matrix operator-(const matrix & a) const;
void print();
double & operator()(int n, int m) const;
double & operator()(int n) const;
matrix operator=(const matrix &a);
matrix operator*(const matrix &a) const;
matrix operator|(const matrix &b) const;
matrix operator+(); //unary operator for upper triangulation
double det();
double norm() const;
matrix column(int);
friend matrix operator*(double, matrix &);
friend matrix operator*(matrix &, double);
friend int eigJ(matrix &a, double eps, double *, matrix &);
};
// end class matrix