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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? lequations.cs

?? 使用C#編輯的一些矩陣運(yùn)算的源程序
?? CS
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
			int l,k,i,j,nIs=0,u,v;
			double p,q,s,d;

			// 方程組的屬性,將常數(shù)矩陣賦給解矩陣
			mtxResult.SetValue(mtxLEConst);
			mtxResultImag.SetValue(mtxConstImag);
			double[] pDataCoef = mtxLECoef.GetData();
			double[] pDataConst = mtxResult.GetData();
			double[] pDataCoefImag = mtxCoefImag.GetData();
			double[] pDataConstImag = mtxResultImag.GetData();
			int n = GetNumUnknowns();
			int m = mtxLEConst.GetNumColumns();

			// 臨時(shí)緩沖區(qū),存放變換的列數(shù)
			int[] pnJs = new int[n];

			// 消元
			for (k=0;k<=n-1;k++)
			{ 
				d=0.0;
				for (i=k;i<=n-1;i++)
				{
					for (j=k;j<=n-1;j++)
					{ 
						u=i*n+j;
						p=pDataCoef[u]*pDataCoef[u]+pDataCoefImag[u]*pDataCoefImag[u];
						if (p>d) 
						{
							d=p;
							pnJs[k]=j;
							nIs=i;
						}
					}
				}
	        
				// 求解失敗
				if (d == 0.0)
				{
					return false;
				}
	        
				if (nIs!=k)
				{ 
					for (j=k;j<=n-1;j++)
					{ 
						u=k*n+j; 
						v=nIs*n+j;
						p=pDataCoef[u]; 
						pDataCoef[u]=pDataCoef[v]; 
						pDataCoef[v]=p;
						p=pDataCoefImag[u]; 
						pDataCoefImag[u]=pDataCoefImag[v]; 
						pDataCoefImag[v]=p;
					}
	            
					for (j=0;j<=m-1;j++)
					{ 
						u=k*m+j; 
						v=nIs*m+j;
						p=pDataConst[u]; 
						pDataConst[u]=pDataConst[v]; 
						pDataConst[v]=p;
						p=pDataConstImag[u]; 
						pDataConstImag[u]=pDataConstImag[v]; 
						pDataConstImag[v]=p;
					}
				}
	        
				if (pnJs[k]!=k)
				{
					for (i=0;i<=n-1;i++)
					{ 
						u=i*n+k; 
						v=i*n+pnJs[k];
						p=pDataCoef[u]; 
						pDataCoef[u]=pDataCoef[v]; 
						pDataCoef[v]=p;
						p=pDataCoefImag[u]; 
						pDataCoefImag[u]=pDataCoefImag[v]; 
						pDataCoefImag[v]=p;
					}
				}

				v=k*n+k;
				for (j=k+1;j<=n-1;j++)
				{ 
					u=k*n+j;
					p=pDataCoef[u]*pDataCoef[v]; 
					q=-pDataCoefImag[u]*pDataCoefImag[v];
					s=(pDataCoef[v]-pDataCoefImag[v])*(pDataCoef[u]+pDataCoefImag[u]);
					pDataCoef[u]=(p-q)/d; 
					pDataCoefImag[u]=(s-p-q)/d;
				}
	        
				for (j=0;j<=m-1;j++)
				{ 
					u=k*m+j;
					p=pDataConst[u]*pDataCoef[v]; 
					q=-pDataConstImag[u]*pDataCoefImag[v];
					s=(pDataCoef[v]-pDataCoefImag[v])*(pDataConst[u]+pDataConstImag[u]);
					pDataConst[u]=(p-q)/d; 
					pDataConstImag[u]=(s-p-q)/d;
				}
	        
				for (i=0;i<=n-1;i++)
				{
					if (i!=k)
					{ 
						u=i*n+k;
						for (j=k+1;j<=n-1;j++)
						{ 
							v=k*n+j; 
							l=i*n+j;
							p=pDataCoef[u]*pDataCoef[v]; 
							q=pDataCoefImag[u]*pDataCoefImag[v];
							s=(pDataCoef[u]+pDataCoefImag[u])*(pDataCoef[v]+pDataCoefImag[v]);
							pDataCoef[l]=pDataCoef[l]-p+q;
							pDataCoefImag[l]=pDataCoefImag[l]-s+p+q;
						}
	            
						for (j=0;j<=m-1;j++)
						{ 
							l=i*m+j; 
							v=k*m+j;
							p=pDataCoef[u]*pDataConst[v]; q=pDataCoefImag[u]*pDataConstImag[v];
							s=(pDataCoef[u]+pDataCoefImag[u])*(pDataConst[v]+pDataConstImag[v]);
							pDataConst[l]=pDataConst[l]-p+q; 
							pDataConstImag[l]=pDataConstImag[l]-s+p+q;
						}
					}
				}
			}

			// 求解調(diào)整
			for (k=n-1;k>=0;k--)
			{
				if (pnJs[k]!=k)
				{
					for (j=0;j<=m-1;j++)
					{ 
						u=k*m+j;
						v=pnJs[k]*m+j;
						p=pDataConst[u]; 
						pDataConst[u]=pDataConst[v]; 
						pDataConst[v]=p;
						p=pDataConstImag[u]; 
						pDataConstImag[u]=pDataConstImag[v]; 
						pDataConstImag[v]=p;
					}
				}
			}

			return true;
		}

		/**
		 * 求解三對(duì)角線方程組的追趕法
		 * 
		 * @param mtxResult - Matrix對(duì)象,返回方程組解矩陣
		 * @return bool 型,方程組求解是否成功
		 */
		public bool GetRootsetTriDiagonal(Matrix mtxResult)
		{ 
			int k,j;
			double s;
	    
			// 將常數(shù)矩陣賦給解矩陣
			mtxResult.SetValue(mtxLEConst);
			double[] pDataConst = mtxResult.GetData();

			int n = GetNumUnknowns();
			if (mtxLECoef.GetNumRows() != n)
				return false;

			// 為系數(shù)矩陣對(duì)角線數(shù)組分配內(nèi)存
			double[] pDiagData = new double[3*n-2];

			// 構(gòu)造系數(shù)矩陣對(duì)角線元素?cái)?shù)組
			k = j = 0;
			if (k == 0)
			{
				pDiagData[j++] = mtxLECoef.GetElement(k, k);
				pDiagData[j++] = mtxLECoef.GetElement(k, k+1);
			}
			for (k=1; k<n-1; ++k)
			{
				pDiagData[j++] = mtxLECoef.GetElement(k, k-1);
				pDiagData[j++] = mtxLECoef.GetElement(k, k);
				pDiagData[j++] = mtxLECoef.GetElement(k, k+1);
			}
			if (k == n-1)
			{
				pDiagData[j++] = mtxLECoef.GetElement(k, k-1);
				pDiagData[j++] = mtxLECoef.GetElement(k, k);
			}

			// 求解
			for (k=0;k<=n-2;k++)
			{ 
				j=3*k; 
				s=pDiagData[j];

				// 求解失敗
				if (Math.Abs(s)+1.0==1.0)
				{
					return false;
				}

				pDiagData[j+1]=pDiagData[j+1]/s;
				pDataConst[k]=pDataConst[k]/s;
				pDiagData[j+3]=pDiagData[j+3]-pDiagData[j+2]*pDiagData[j+1];
				pDataConst[k+1]=pDataConst[k+1]-pDiagData[j+2]*pDataConst[k];
			}
	    
			s=pDiagData[3*n-3];
			if (s == 0.0)
			{
				return false;
			}
	    
			// 調(diào)整
			pDataConst[n-1]=pDataConst[n-1]/s;
			for (k=n-2;k>=0;k--)
				pDataConst[k]=pDataConst[k]-pDiagData[3*k+1]*pDataConst[k+1];
	    
			return true;
		}

		/**
		 * 一般帶型方程組的求解
		 * 
		 * @param nBandWidth - 帶寬
		 * @param mtxResult - Matrix對(duì)象,返回方程組解矩陣
		 * @return bool 型,方程組求解是否成功
		 */
		public bool GetRootsetBand(int nBandWidth, Matrix mtxResult)
		{ 
			int ls,k,i,j,nis=0,u,v;
			double p,t;
	    
			// 帶寬必須為奇數(shù)
			if ((nBandWidth-1)%2 != 0)
				return false;

			// 將常數(shù)矩陣賦給解矩陣
			mtxResult.SetValue(mtxLEConst);
			double[] pDataConst = mtxResult.GetData();

			// 方程組屬性
			int m = mtxLEConst.GetNumColumns();
			int n = GetNumUnknowns();
			if (mtxLECoef.GetNumRows() != n)
				return false;

			// 帶寬數(shù)組:帶型矩陣的有效數(shù)據(jù)
			double[] pBandData = new double[nBandWidth*n];

			// 半帶寬
			ls = (nBandWidth-1)/2;

			// 構(gòu)造帶寬數(shù)組
			for (i=0; i<n; ++i)
			{
				j = 0;
				for (k=Math.Max(0, i-ls); k<Math.Max(0, i-ls)+nBandWidth; ++k)
				{
					if (k < n)
						pBandData[i*nBandWidth+j++] = mtxLECoef.GetElement(i, k);
					else
						pBandData[i*nBandWidth+j++] = 0;
				}
			}

			// 求解
			for (k=0;k<=n-2;k++)
			{ 
				p=0.0;
				for (i=k;i<=ls;i++)
				{ 
					t=Math.Abs(pBandData[i*nBandWidth]);
					if (t>p) 
					{
						p=t; 
						nis=i;
					}
				}
	        
				if (p == 0.0)
				{
					return false;
				}

				for (j=0;j<=m-1;j++)
				{ 
					u=k*m+j; 
					v=nis*m+j;
					t=pDataConst[u]; 
					pDataConst[u]=pDataConst[v]; 
					pDataConst[v]=t;
				}
	        
				for (j=0;j<=nBandWidth-1;j++)
				{ 
					u=k*nBandWidth+j; 
					v=nis*nBandWidth+j;
					t=pBandData[u]; 
					pBandData[u]=pBandData[v]; 
					pBandData[v]=t;
				}
	        
				for (j=0;j<=m-1;j++)
				{ 
					u=k*m+j; 
					pDataConst[u]=pDataConst[u]/pBandData[k*nBandWidth];
				}
	        
				for (j=1;j<=nBandWidth-1;j++)
				{ 
					u=k*nBandWidth+j; 
					pBandData[u]=pBandData[u]/pBandData[k*nBandWidth];
				}
	        
				for (i=k+1;i<=ls;i++)
				{ 
					t=pBandData[i*nBandWidth];
					for (j=0;j<=m-1;j++)
					{ 
						u=i*m+j; 
						v=k*m+j;
						pDataConst[u]=pDataConst[u]-t*pDataConst[v];
					}
	            
					for (j=1;j<=nBandWidth-1;j++)
					{ 
						u=i*nBandWidth+j; 
						v=k*nBandWidth+j;
						pBandData[u-1]=pBandData[u]-t*pBandData[v];
					}
	            
					u=i*nBandWidth+nBandWidth-1; pBandData[u]=0.0;
				}
	        
				if (ls!=(n-1)) 
					ls=ls+1;
			}
	    
			p=pBandData[(n-1)*nBandWidth];
			if (p == 0.0)
			{
				return false;
			}

			for (j=0;j<=m-1;j++)
			{ 
				u=(n-1)*m+j; 
				pDataConst[u]=pDataConst[u]/p;
			}
	    
			ls=1;
			for (i=n-2;i>=0;i--)
			{ 
				for (k=0;k<=m-1;k++)
				{ 
					u=i*m+k;
					for (j=1;j<=ls;j++)
					{ 
						v=i*nBandWidth+j; 
						nis=(i+j)*m+k;
						pDataConst[u]=pDataConst[u]-pBandData[v]*pDataConst[nis];
					}
				}
	        
				if (ls!=(nBandWidth-1)) 
					ls=ls+1;
			}
	    
			return true;
		}

		/**
		 * 求解對(duì)稱(chēng)方程組的分解法
		 * 
		 * @param mtxResult - CMatrix引用對(duì)象,返回方程組解矩陣
		 * @return bool 型,方程組求解是否成功
		 */
		public bool GetRootsetDjn(Matrix mtxResult)
		{ 
			int i,j,l,k,u,v,w,k1,k2,k3;
			double p;

			// 方程組屬性,將常數(shù)矩陣賦給解矩陣
			Matrix mtxCoef = new Matrix(mtxLECoef);
			mtxResult.SetValue(mtxLEConst);
			int n = mtxCoef.GetNumColumns();
			int m = mtxResult.GetNumColumns();
			double[] pDataCoef = mtxCoef.GetData();
			double[] pDataConst = mtxResult.GetData();

			// 非對(duì)稱(chēng)系數(shù)矩陣,不能用本方法求解
			if (pDataCoef[0] == 0.0)
				return false;

			for (i=1; i<=n-1; i++)
			{ 
				u=i*n; 
				pDataCoef[u]=pDataCoef[u]/pDataCoef[0];
			}
	    
			for (i=1; i<=n-2; i++)
			{ 
				u=i*n+i;
				for (j=1; j<=i; j++)
				{ 
					v=i*n+j-1; 
					l=(j-1)*n+j-1;
					pDataCoef[u]=pDataCoef[u]-pDataCoef[v]*pDataCoef[v]*pDataCoef[l];
				}
	        
				p=pDataCoef[u];
				if (p == 0.0)
					return false;

				for (k=i+1; k<=n-1; k++)
				{ 
					u=k*n+i;
					for (j=1; j<=i; j++)
					{ 
						v=k*n+j-1; 
						l=i*n+j-1; 
						w=(j-1)*n+j-1;
						pDataCoef[u]=pDataCoef[u]-pDataCoef[v]*pDataCoef[l]*pDataCoef[w];
					}
	            
					pDataCoef[u]=pDataCoef[u]/p;
				}
			}
	    
			u=n*n-1;
			for (j=1; j<=n-1; j++)
			{ 
				v=(n-1)*n+j-1; 
				w=(j-1)*n+j-1;
				pDataCoef[u]=pDataCoef[u]-pDataCoef[v]*pDataCoef[v]*pDataCoef[w];
			}
	    
			p=pDataCoef[u];
			if (p == 0.0)
				return false;

			for (j=0; j<=m-1; j++)
			{
				for (i=1; i<=n-1; i++)
				{ 
					u=i*m+j;
					for (k=1; k<=i; k++)
					{ 
						v=i*n+k-1; 
						w=(k-1)*m+j;
						pDataConst[u]=pDataConst[u]-pDataCoef[v]*pDataConst[w];
					}
				}
			}

			for (i=1; i<=n-1; i++)
			{ 
				u=(i-1)*n+i-1;
				for (j=i; j<=n-1; j++)
				{ 
					v=(i-1)*n+j; 
					w=j*n+i-1;
					pDataCoef[v]=pDataCoef[u]*pDataCoef[w];
				}
			}
	    
			for (j=0; j<=m-1; j++)
			{ 
				u=(n-1)*m+j;
				pDataConst[u]=pDataConst[u]/p;
				for (k=1; k<=n-1; k++)
				{ 
					k1=n-k; 
					k3=k1-1; 
					u=k3*m+j;
					for (k2=k1; k2<=n-1; k2++)
					{ 
						v=k3*n+k2; 
						w=k2*m+j;
						pDataConst[u]=pDataConst[u]-pDataCoef[v]*pDataConst[w];
					}
	            
					pDataConst[u]=pDataConst[u]/pDataCoef[k3*n+k3];
				}
			}
	    
			return true;
		}

		/**
		 * 求解對(duì)稱(chēng)正定方程組的平方根法
		 * 
		 * @param mtxResult - CMatrix引用對(duì)象,返回方程組解矩陣
		 * @return bool 型,方程組求解是否成功
		 */
		public bool GetRootsetCholesky(Matrix mtxResult)
		{ 
			int i,j,k,u,v;
	    
			// 方程組屬性,將常數(shù)矩陣賦給解矩陣
			Matrix mtxCoef = new Matrix(mtxLECoef);
			mtxResult.SetValue(mtxLEConst);
			int n = mtxCoef.GetNumColumns();
			int m = mtxResult.GetNumColumns();
			double[] pDataCoef = mtxCoef.GetData();
			double[] pDataConst = mtxResult.GetData();
	    
			// 非對(duì)稱(chēng)正定系數(shù)矩陣,不能用本方法求解
			if (pDataCoef[0] <= 0.0)
				return false;

			pDataCoef[0]=Math.Sqrt(pDataCoef[0]);
			for (j=1; j<=n-1; j++) 
				pDataCoef[j]=pDataCoef[j]/pDataCoef[0];
	    
			for (i=1; i<=n-1; i++)
			{ 
				u=i*n+i;
				for (j=1; j<=i; j++)
				{ 
					v=(j-1)*n+i;
					pDataCoef[u]=pDataCoef[u]-pDataCoef[v]*pDataCoef[v];
				}
	        
				if (pDataCoef[u] <= 0.0)
					return false;

				pDataCoef[u]=Math.Sqrt(pDataCoef[u]);
				if (i!=(n-1))
				{ 
					for (j=i+1; j<=n-1; j++)
					{ 
						v=i*n+j;
						for (k=1; k<=i; k++)
							pDataCoef[v]=pDataCoef[v]-pDataCoef[(k-1)*n+i]*pDataCoef[(k-1)*n+j];
						pDataCoef[v]=pDataCoef[v]/pDataCoef[u];
					}
				}
			}
	    
			for (j=0; j<=m-1; j++)

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区影院| 欧美精品一区二区不卡| 日韩国产在线一| 欧美伦理影视网| 国产一区啦啦啦在线观看| 精品捆绑美女sm三区| 成人动漫在线一区| 一本久道久久综合中文字幕| 日韩精品1区2区3区| 136国产福利精品导航| 欧美xfplay| 欧美日韩国产一级二级| 91美女视频网站| 成人午夜又粗又硬又大| 国模冰冰炮一区二区| 美国毛片一区二区| 麻豆成人综合网| 免费在线观看视频一区| 奇米精品一区二区三区在线观看 | 成人晚上爱看视频| 国内精品伊人久久久久av影院| 天堂久久久久va久久久久| 亚洲狠狠爱一区二区三区| 一级特黄大欧美久久久| 亚洲欧洲成人精品av97| 久久青草欧美一区二区三区| 精品国产污污免费网站入口 | 久久久久久久久久电影| 久久免费精品国产久精品久久久久| 精品美女在线播放| 日本一区二区成人| 亚洲欧美日本韩国| 亚洲无人区一区| 韩国精品主播一区二区在线观看| 久久成人18免费观看| 国产高清亚洲一区| 色噜噜狠狠色综合欧洲selulu| 在线一区二区三区做爰视频网站| 欧美曰成人黄网| 久久久亚洲欧洲日产国码αv| 久久精品男人的天堂| 樱桃视频在线观看一区| 美国十次了思思久久精品导航| 国内不卡的二区三区中文字幕 | 欧美日韩亚洲综合一区二区三区| 欧美日韩精品二区第二页| 欧美成人三级电影在线| 《视频一区视频二区| 九色综合国产一区二区三区| av一区二区三区黑人| 日韩欧美国产麻豆| 亚洲精品你懂的| 国产成人激情av| 日韩欧美国产小视频| 亚洲无线码一区二区三区| 国产精品一级在线| 欧美大胆一级视频| 亚洲一区中文日韩| 成人午夜看片网址| 精品国产成人系列| 蜜桃一区二区三区在线观看| 色狠狠一区二区三区香蕉| 中文字幕二三区不卡| 国产乱码精品一区二区三区av| 欧美色图片你懂的| 亚洲日本韩国一区| 北岛玲一区二区三区四区| wwwwxxxxx欧美| 精品一区二区三区免费播放| 91精品国产综合久久久久| 午夜视频在线观看一区二区三区 | 91玉足脚交白嫩脚丫在线播放| 久久久精品影视| 国产ts人妖一区二区| 国产三级一区二区三区| 成人午夜视频在线观看| 欧美高清在线精品一区| 成人av网址在线观看| 国产精品免费久久久久| 99国产精品久久久| 亚洲6080在线| 欧美激情在线观看视频免费| 国产精品久久久久久久久免费丝袜| www.日本不卡| 国产69精品一区二区亚洲孕妇| 日韩激情一二三区| 欧美视频中文一区二区三区在线观看| 国内成人自拍视频| 黄网站免费久久| 欧美刺激午夜性久久久久久久| 国产在线视频一区二区| 日韩电影在线免费观看| 亚洲综合激情网| 一区二区中文视频| 国产欧美1区2区3区| 国产亚洲午夜高清国产拍精品 | 亚洲精品日日夜夜| 国产精品久久久久久久久免费丝袜 | 色婷婷综合五月| 亚洲老司机在线| 99视频国产精品| 日韩精品电影一区亚洲| 日韩区在线观看| 国产福利91精品| 一区二区三区日韩欧美精品| 91精品欧美综合在线观看最新| 国产精品性做久久久久久| 亚洲欧洲综合另类| 日韩一区二区三区精品视频 | 国产精品久久久一本精品| 成人激情免费视频| 婷婷国产在线综合| 国产精品美女久久久久久久 | 精品污污网站免费看| 日韩福利视频网| 亚洲人成精品久久久久久| 国产精品久久久久久久岛一牛影视 | 欧美一区二区三区日韩| 久久国产麻豆精品| 亚洲电影在线播放| 国产精品网站在线观看| 日本丰满少妇一区二区三区| 午夜精品福利久久久| 日韩一级完整毛片| 首页欧美精品中文字幕| 欧美国产视频在线| 精品捆绑美女sm三区| 欧美精品一卡二卡| 中文字幕第一区综合| 免播放器亚洲一区| 日韩精品自拍偷拍| 亚洲一二三四区不卡| 91精品国产欧美一区二区| 精品亚洲成a人| 国产精品久久久久婷婷| 一本久久a久久精品亚洲 | 美女网站视频久久| 亚洲一区二区精品3399| 欧美精品日韩综合在线| 国产乱人伦偷精品视频不卡 | 99re热视频这里只精品| 亚洲成人免费观看| 久久久久久久久久久黄色| 色综合中文综合网| 99精品国产一区二区三区不卡| 亚洲成人免费看| 久久精品视频一区二区| 91国产免费观看| 久久9热精品视频| 亚洲婷婷综合色高清在线| 欧美精品久久99久久在免费线| 国产精品一区二区在线观看网站| 亚洲免费在线电影| 精品国产自在久精品国产| 色一情一乱一乱一91av| 久久国产精品无码网站| 一区二区在线免费观看| ww亚洲ww在线观看国产| 日本韩国欧美三级| 国产一区高清在线| 亚洲成人av在线电影| 国产精品视频在线看| 日韩视频一区二区三区在线播放 | 在线看一区二区| 国产成人免费视频网站高清观看视频| 亚洲一二三四久久| 久久综合色综合88| 欧美日韩色一区| av不卡免费在线观看| 韩国三级在线一区| 日本欧美久久久久免费播放网| 亚洲激情在线播放| 欧美激情一区在线| 精品国产91亚洲一区二区三区婷婷| 色婷婷国产精品| 成人性生交大片免费看中文| 麻豆极品一区二区三区| 午夜视频一区二区| 亚洲国产一区二区视频| 亚洲国产成人在线| 久久精品视频免费观看| 日韩精品专区在线影院观看| 欧美日韩高清不卡| 欧美午夜电影一区| 91麻豆精品视频| av在线不卡网| 成人综合婷婷国产精品久久免费| 精品午夜一区二区三区在线观看| 日韩不卡一二三区| 首页国产丝袜综合| 五月天一区二区三区| 亚洲午夜激情av| 一区二区三区不卡视频| 亚洲精品自拍动漫在线| 亚洲欧美一区二区视频| 国产精品久久福利| 国产精品情趣视频| 国产精品久久久久久久久久久免费看| 久久综合视频网| 久久久激情视频|