亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? matrix.h

?? 內(nèi)容包含了《科學(xué)與工程數(shù)值計(jì)算算法》一書中全部的源代碼。使用時(shí)只需將相應(yīng)的目錄拷貝到您的硬盤中。
?? H
字號(hào):
//////////////////////////////////////////////////////////////////////
// Matrix.h
//
// 操作矩陣的類 CMatrix 的聲明接口
//
// 周長發(fā)編制, 2002/8
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MATRIX_H__ACEC32EA_5254_4C23_A8BD_12F9220EF43A__INCLUDED_)
#define AFX_MATRIX_H__ACEC32EA_5254_4C23_A8BD_12F9220EF43A__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <math.h>

#if !defined(_BITSET_)
#	include <bitset>
#endif // !defined(_BITSET_)

//////////////////////////////////////////////////////////////////////////////////////
//
//(-- class CTokenizer
//
class CTokenizer
{
public:
	CTokenizer(const CString& cs, const CString& csDelim) : m_cs(cs), m_nCurPos(0)
	{
		SetDelimiters(csDelim);
	}
	void SetDelimiters(const CString& csDelim)
	{
		for(int i = 0; i < csDelim.GetLength(); ++i)
			m_sDelimiter.set(static_cast<BYTE>(csDelim[i]));
	}

	BOOL Next(CString& cs)
	{
		cs.Empty();

		while(m_nCurPos < m_cs.GetLength() && m_sDelimiter[static_cast<BYTE>(m_cs[m_nCurPos])])
			++m_nCurPos;

		if(m_nCurPos >= m_cs.GetLength())
			return FALSE;

		int nStartPos = m_nCurPos;
		while(m_nCurPos < m_cs.GetLength() && !m_sDelimiter[static_cast<BYTE>(m_cs[m_nCurPos])])
			++m_nCurPos;
		
		cs = m_cs.Mid(nStartPos, m_nCurPos - nStartPos);

		return TRUE;
	}

	CString	Tail() const
	{
		int nCurPos = m_nCurPos;

		while(nCurPos < m_cs.GetLength() && m_sDelimiter[static_cast<BYTE>(m_cs[nCurPos])])
			++nCurPos;

		CString csResult;

		if(nCurPos < m_cs.GetLength())
			csResult = m_cs.Mid(nCurPos);

		return csResult;
	}

private:
	CString m_cs;
	std::bitset<256> m_sDelimiter;
	int m_nCurPos;
};
//
//--) // class CTokenizer
//
//////////////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////////////
//
//(-- class CMatrix
//
class CMatrix  
{
	//
	// 公有接口函數(shù)
	//
public:

	//
	// 構(gòu)造與析構(gòu)
	//

	CMatrix();										// 基礎(chǔ)構(gòu)造函數(shù)
	CMatrix(int nRows, int nCols);					// 指定行列構(gòu)造函數(shù)
	CMatrix(int nRows, int nCols, double value[]);	// 指定數(shù)據(jù)構(gòu)造函數(shù)
	CMatrix(int nSize);								// 方陣構(gòu)造函數(shù)
	CMatrix(int nSize, double value[]);				// 指定數(shù)據(jù)方陣構(gòu)造函數(shù)
	CMatrix(const CMatrix& other);					// 拷貝構(gòu)造函數(shù)
	BOOL	Init(int nRows, int nCols);				// 初始化矩陣	
	BOOL	MakeUnitMatrix(int nSize);				// 將方陣初始化為單位矩陣
	virtual ~CMatrix();								// 析構(gòu)函數(shù)

	//
	// 輸入與顯示
	//

	// 將字符串轉(zhuǎn)換為矩陣數(shù)據(jù)
	BOOL FromString(CString s, const CString& sDelim = " ", BOOL bLineBreak = TRUE);	
	// 將矩陣轉(zhuǎn)換為字符串
	CString ToString(const CString& sDelim = " ", BOOL bLineBreak = TRUE) const;
	// 將矩陣的指定行轉(zhuǎn)換為字符串
	CString RowToString(int nRow, const CString& sDelim = " ") const;
	// 將矩陣的指定列轉(zhuǎn)換為字符串
	CString ColToString(int nCol, const CString& sDelim = " ") const;

	//
	// 元素與值操作
	//

	BOOL	SetElement(int nRow, int nCol, double value);	// 設(shè)置指定元素的值
	double	GetElement(int nRow, int nCol) const;			// 獲取指定元素的值
	void    SetData(double value[]);						// 設(shè)置矩陣的值
	int		GetNumColumns() const;							// 獲取矩陣的列數(shù)
	int		GetNumRows() const;								// 獲取矩陣的行數(shù)
	int     GetRowVector(int nRow, double* pVector) const;	// 獲取矩陣的指定行矩陣
	int     GetColVector(int nCol, double* pVector) const;	// 獲取矩陣的指定列矩陣
	double* GetData() const;								// 獲取矩陣的值

	//
	// 數(shù)學(xué)操作
	//

	CMatrix& operator=(const CMatrix& other);
	BOOL operator==(const CMatrix& other) const;
	BOOL operator!=(const CMatrix& other) const;
	CMatrix	operator+(const CMatrix& other) const;
	CMatrix	operator-(const CMatrix& other) const;
	CMatrix	operator*(double value) const;
	CMatrix	operator*(const CMatrix& other) const;
	// 復(fù)矩陣乘法
	BOOL CMul(const CMatrix& AR, const CMatrix& AI, const CMatrix& BR, const CMatrix& BI, CMatrix& CR, CMatrix& CI) const;
	// 矩陣的轉(zhuǎn)置
	CMatrix Transpose() const;

	//
	// 算法
	//

	// 實(shí)矩陣求逆的全選主元高斯-約當(dāng)法
	BOOL InvertGaussJordan();                                               
	// 復(fù)矩陣求逆的全選主元高斯-約當(dāng)法
	BOOL InvertGaussJordan(CMatrix& mtxImag);                                 
	// 對稱正定矩陣的求逆
	BOOL InvertSsgj();                                              
	// 托伯利茲矩陣求逆的埃蘭特方法
	BOOL InvertTrench();                                                    
	// 求行列式值的全選主元高斯消去法
	double DetGauss();                                                              
	// 求矩陣秩的全選主元高斯消去法
	int RankGauss();
	// 對稱正定矩陣的喬里斯基分解與行列式的求值
	BOOL DetCholesky(double* dblDet);                                                               
	// 矩陣的三角分解
	BOOL SplitLU(CMatrix& mtxL, CMatrix& mtxU);                                     
	// 一般實(shí)矩陣的QR分解
	BOOL SplitQR(CMatrix& mtxQ);                                                      
	// 一般實(shí)矩陣的奇異值分解
	BOOL SplitUV(CMatrix& mtxU, CMatrix& mtxV, double eps = 0.000001);                                       
	// 求廣義逆的奇異值分解法
	BOOL GInvertUV(CMatrix& mtxAP, CMatrix& mtxU, CMatrix& mtxV, double eps = 0.000001);
	// 約化對稱矩陣為對稱三對角陣的豪斯荷爾德變換法
	BOOL MakeSymTri(CMatrix& mtxQ, CMatrix& mtxT, double dblB[], double dblC[]);
	// 實(shí)對稱三對角陣的全部特征值與特征向量的計(jì)算
	BOOL SymTriEigenv(double dblB[], double dblC[], CMatrix& mtxQ, int nMaxIt = 60, double eps = 0.000001);
	// 約化一般實(shí)矩陣為赫申伯格矩陣的初等相似變換法
	void MakeHberg();
	// 求赫申伯格矩陣全部特征值的QR方法
	BOOL HBergEigenv(double dblU[], double dblV[], int nMaxIt = 60, double eps = 0.000001);
	// 求實(shí)對稱矩陣特征值與特征向量的雅可比法
	BOOL JacobiEigenv(double dblEigenValue[], CMatrix& mtxEigenVector, int nMaxIt = 60, double eps = 0.000001);
	// 求實(shí)對稱矩陣特征值與特征向量的雅可比過關(guān)法
	BOOL JacobiEigenv2(double dblEigenValue[], CMatrix& mtxEigenVector, double eps = 0.000001);

	//
	// 保護(hù)性數(shù)據(jù)成員
	//
protected:
	int	m_nNumColumns;			// 矩陣列數(shù)
	int	m_nNumRows;				// 矩陣行數(shù)
	double*	m_pData;			// 矩陣數(shù)據(jù)緩沖區(qū)

	//
	// 內(nèi)部函數(shù)
	//
private:
	void ppp(double a[], double e[], double s[], double v[], int m, int n);
	void sss(double fg[2], double cs[2]);

};
//
//--) // class CMatrix
//
//////////////////////////////////////////////////////////////////////////////////////

#endif // !defined(AFX_MATRIX_H__ACEC32EA_5254_4C23_A8BD_12F9220EF43A__INCLUDED_)

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产日韩精品一区二区三区| 欧美性受xxxx| 欧美成人a在线| 蜜臀va亚洲va欧美va天堂 | 一区二区三区日本| a亚洲天堂av| 亚洲黄色小说网站| 欧美女孩性生活视频| 日本强好片久久久久久aaa| 欧美一区二区美女| 国产一区二区三区高清播放| 国产偷v国产偷v亚洲高清| 成人激情电影免费在线观看| 综合av第一页| 欧美日韩精品久久久| 蜜臀av性久久久久av蜜臀妖精| xvideos.蜜桃一区二区| 国产精品一区二区免费不卡| 欧美国产精品一区二区三区| 色综合久久综合网欧美综合网| 亚洲成人久久影院| 久久欧美中文字幕| 92精品国产成人观看免费| 亚洲成人精品在线观看| 欧美xxxxxxxx| 99久久99久久精品免费观看| 午夜精品久久久久久久| 久久嫩草精品久久久久| 91视视频在线观看入口直接观看www| 亚洲自拍另类综合| 精品第一国产综合精品aⅴ| 99国产精品久| 日韩电影免费在线看| 国产精品女主播在线观看| 在线观看日韩电影| 国产一区二区三区| 亚洲综合激情网| 国产亚洲一二三区| 欧美日韩黄色影视| 成人免费毛片片v| 蜜桃一区二区三区在线观看| 亚洲三级久久久| 精品日本一线二线三线不卡| 色老综合老女人久久久| 激情综合色播激情啊| 艳妇臀荡乳欲伦亚洲一区| 亚洲精品一区二区三区在线观看| 色哟哟一区二区三区| 国产很黄免费观看久久| 亚洲 欧美综合在线网络| 国产精品美女久久久久久2018| 欧美一卡二卡三卡四卡| 色噜噜久久综合| 成人美女视频在线看| 国内精品写真在线观看| 水野朝阳av一区二区三区| 亚洲桃色在线一区| 久久精品视频一区二区三区| 制服丝袜亚洲精品中文字幕| 色诱视频网站一区| 成人精品高清在线| 久久成人羞羞网站| 青青草视频一区| 一区二区三区免费观看| 国产精品色在线| 久久久99精品免费观看| 精品噜噜噜噜久久久久久久久试看 | 久久网站最新地址| 日韩亚洲欧美高清| 欧美日韩免费视频| 欧美四级电影在线观看| 色天使久久综合网天天| 99精品视频在线播放观看| 国产精品18久久久久久久网站| 奇米888四色在线精品| 性感美女极品91精品| 亚洲综合色区另类av| 亚洲精品午夜久久久| 亚洲免费在线电影| 亚洲欧洲综合另类| 亚洲精品久久7777| 亚洲男同1069视频| 亚洲精品日日夜夜| 亚洲国产综合视频在线观看| 亚洲综合视频网| 午夜国产精品影院在线观看| 午夜影院久久久| 日韩激情中文字幕| 另类小说一区二区三区| 久久99久久99| 国产精品综合一区二区三区| 国产91清纯白嫩初高中在线观看| 国产河南妇女毛片精品久久久 | 日韩精彩视频在线观看| 日韩精品每日更新| 麻豆91免费看| 国产黄色成人av| 99久久99久久精品免费观看 | 国产精品18久久久久| 粉嫩一区二区三区性色av| 成人黄色777网| 91福利视频网站| 91精品婷婷国产综合久久性色| 日韩欧美国产午夜精品| 久久久影视传媒| 亚洲视频 欧洲视频| 亚洲a一区二区| 久久av资源网| 99视频超级精品| 91.com视频| 国产精品欧美一区二区三区| 亚洲永久精品国产| 久久av资源网| 99国产欧美久久久精品| 在线不卡中文字幕| 久久精品一区二区三区不卡 | eeuss鲁一区二区三区| 欧美色区777第一页| 精品伦理精品一区| 亚洲日韩欧美一区二区在线| 日韩激情av在线| 成人h精品动漫一区二区三区| 欧美日韩在线播放一区| 久久久一区二区| 亚洲6080在线| av在线播放不卡| 日韩精品一区二区在线观看| 国产精品不卡一区二区三区| 日日摸夜夜添夜夜添国产精品| 国产高清亚洲一区| 欧美日本一区二区在线观看| 久久久av毛片精品| 日韩专区中文字幕一区二区| 丁香六月久久综合狠狠色| 3d成人动漫网站| 国产亚洲一区二区三区在线观看| 一级特黄大欧美久久久| 国产精品一区二区男女羞羞无遮挡| 欧美午夜精品电影| 国产精品视频你懂的| 免费不卡在线观看| 在线免费观看日本一区| 国产欧美久久久精品影院| 日本一不卡视频| 色婷婷av久久久久久久| 中日韩av电影| 裸体一区二区三区| 欧美日本不卡视频| 亚洲精品精品亚洲| 成年人网站91| 国产亚洲短视频| 狠狠v欧美v日韩v亚洲ⅴ| 在线看国产一区二区| 中文字幕日韩精品一区 | 国产成人精品三级| 精品少妇一区二区三区在线播放 | 欧美性猛交一区二区三区精品| 欧美经典三级视频一区二区三区| 麻豆精品国产91久久久久久| 欧美天天综合网| 亚洲制服丝袜av| 日本丶国产丶欧美色综合| 国产精品乱人伦中文| 国产精品中文字幕日韩精品| 日韩精品一区二区三区视频 | 国产精品久久久久aaaa| 国产成人免费在线观看| 26uuu精品一区二区| 国产在线精品免费| 久久亚洲捆绑美女| 国产一区二区三区久久久| 欧美大片顶级少妇| 精品亚洲成av人在线观看| 日韩精品在线网站| 国产乱子伦视频一区二区三区| 2021久久国产精品不只是精品| 看片的网站亚洲| 99热99精品| 自拍偷在线精品自拍偷无码专区| 日韩欧美国产综合在线一区二区三区 | jizz一区二区| 国产精品理论片| 91麻豆swag| 日av在线不卡| 欧美精彩视频一区二区三区| 91国在线观看| 国模无码大尺度一区二区三区 | 亚洲va欧美va天堂v国产综合| 精品99999| 在线免费亚洲电影| 久久精品国产在热久久| 亚洲视频综合在线| 日韩欧美综合在线| 成人高清免费观看| 图片区小说区区亚洲影院| 国产精品视频麻豆| 日韩视频国产视频| 在线观看日韩国产| 国产成人精品亚洲午夜麻豆| 香蕉久久一区二区不卡无毒影院|