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

📄 sparse_rect.h

📁 二维射线追踪地震层析成像
💻 H
字号:
/* * sparse_rect.h - sparse rectangular matrix interface * * Jun Korenaga, MIT/WHOI * January 1999 */#ifndef _TOMO_SPARSE_RECT_H_#define _TOMO_SPARSE_RECT_H_#include <map>#include <array.h> // from mconvstruct SparseMatAux {    SparseMatAux(double d=1.0, const Array1d<int> *r=0,		 const Array1d<int> *c=0)	: scale_factor(d), p_row(r), p_col(c) {}        double scale_factor;    const Array1d<int> *p_row;    const Array1d<int> *p_col;};    class SparseRectangular {public:    typedef Array1d< map<int,double> > sparseMap;        SparseRectangular(){};    SparseRectangular(const sparseMap& A, int ncol=0);    SparseRectangular(const sparseMap& A, const Array1d<int>& r,		      const Array1d<int>& c, int ncol=0);    SparseRectangular(const Array1d<const sparseMap*>& As,		      const Array1d<SparseMatAux>& spec, int ncol=0);    int nRow() const { return nrow; }    int nCol() const { return ncol; }    void Ax(const Array1d<double>&, Array1d<double>&, bool init=true) const;    void Atx(const Array1d<double>&, Array1d<double>&, bool init=true) const;    void dump(const char*) const;    private:    int nrow, ncol;    Array1d<double> val;    Array1d<int> index_j;    Array1d<int> first_k;};#endif /* _TOMO_SPARSE_RECT_H_ */

⌨️ 快捷键说明

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