⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 matrixn.h

📁 basic mathematic classes used for math programming
💻 H
字号:
#ifndef MATRIX_N_H#define MATRIX_N_Hclass vectorN;class matrixN{

friend matrixN   operator*(const  matrixN &, const matrixN&);

  private:    int      n, // row number             m, // col number			on;    vectorN *v; // store matrix one row by one row
  public:    // constructors     matrixN();     matrixN( int, int );     matrixN( int, int, vectorN* );     matrixN(const vectorN&, const vectorN&); // outer product to generate the matrix N. 
	 matrixN(const matrixN&); // ask Li Wei

	 ~matrixN();

    // inquiry functions    void      getValue( m_real** ) const;    m_real    getValue( int, int ) const;    void      setValue( m_real** );    void      setValue( int, int, m_real );    vectorN&  operator[](int i) const { assert(i>=0 && n>i); return v[i]; };    int       row()    const { return n; }    int       column() const { return m; }    void      setSize( int, int );	void      setRow( int, const vectorN& );
	void	  setColumn( int, const vectorN& ); // ask Li Wei
	void      getColumn( int, vectorN&);
	//vectorN&  getColumn(int j);

	void      exchangeColumn(int, int);
	matrixN&  addColumn( const vectorN& a);
	void      setExactSize( int rownum, int colnum );    matrixN&  transpose( const matrixN& );    m_real    det() const;    matrixN&  assign( const matrixN& );    matrixN&  mult( const matrixN&, const matrixN& );    matrixN&  operator*=( m_real );    matrixN&  operator/=( m_real );    matrixN&  operator+=( const matrixN& );    matrixN&  operator-=( const matrixN& );
	matrixN&  operator = (const matrixN& );	matrixN&  mergeUpDown( const matrixN&, const matrixN& );	matrixN&  mergeLeftRight( const matrixN&, const matrixN& );	void      splitUpDown( matrixN&, matrixN& );	void      splitLeftRight( matrixN&, matrixN& );	void      splitUpDown( matrixN&, matrixN&, int );	void      splitLeftRight( matrixN&, matrixN&, int );	void      LUdecompose( int* );	void	  LUsubstitute( int*, vectorN& );	void      LUinverse( matrixN& );	void	  SVdecompose( vectorN&, matrixN& );	void	  SVsubstitute( const vectorN&, const matrixN&,							const vectorN&, vectorN& );	void      SVinverse( matrixN& );    // stream    friend ostream& operator<<( ostream&, const matrixN& );    friend istream& operator>>( istream&, matrixN& );};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -