#include "iostream" using namespace std;
class Matrix
{
private:
double** A; //矩陣A
double *b; //向量b
public:
int size;
Matrix(int );
~Matrix();
friend double* Dooli(Matrix& );
void Input();
void Disp();
};
Matrix::Matrix(int x) {
size=x;
//為向量b分配空間并初始化為0
b=new double [x];
for(int j=0;j<x;j++)
b[j]=0;
//為向量A分配空間并初始化為0
A=new double* [x];
for(int i=0;i<x;i++)
A[i]=new double [x];
for(int m=0;m<x;m++)
for(int n=0;n<x;n++)
A[m][n]=0;
}
Matrix::~Matrix() {
cout<<"正在析構(gòu)中~~~~"<<endl;
delete b;
for(int i=0;i<size;i++)
delete A[i];
delete A;
}
void Matrix::Disp()
{
for(int i=0;i<size;i++)
{
for(int j=0;j<size;j++)
cout<<A[i][j]<<" ";
cout<<endl;
}
}
void Matrix::Input()
{
cout<<"請輸入A:"<<endl;
for(int i=0;i<size;i++)
for(int j=0;j<size;j++){
cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl;
cin>>A[i][j];
}
cout<<"請輸入b:"<<endl;
for(int j=0;j<size;j++){
cout<<"第"<<j+1<<"個(gè):"<<endl;
cin>>b[j];
}
}
double* Dooli(Matrix& A) {
double *Xn=new double [A.size];
Matrix L(A.size),U(A.size);
//分別求得U,L的第一行與第一列
for(int i=0;i<A.size;i++)
U.A[0][i]=A.A[0][i];
for(int j=1;j<A.size;j++)
L.A[j][0]=A.A[j][0]/U.A[0][0];
//分別求得U,L的第r行,第r列
double temp1=0,temp2=0;
for(int r=1;r<A.size;r++){
//U
for(int i=r;i<A.size;i++){
for(int k=0;k<r-1;k++)
temp1=temp1+L.A[r][k]*U.A[k][i];
U.A[r][i]=A.A[r][i]-temp1;
}
//L
for(int i=r+1;i<A.size;i++){
for(int k=0;k<r-1;k++)
temp2=temp2+L.A[i][k]*U.A[k][r];
L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r];
}
}
cout<<"計(jì)算U得:"<<endl;
U.Disp();
cout<<"計(jì)算L的:"<<endl;
L.Disp();
double *Y=new double [A.size];
Y[0]=A.b[0];
for(int i=1;i<A.size;i++ ){
double temp3=0;
for(int k=0;k<i-1;k++)
temp3=temp3+L.A[i][k]*Y[k];
Y[i]=A.b[i]-temp3;
}
Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1];
for(int i=A.size-1;i>=0;i--){
double temp4=0;
for(int k=i+1;k<A.size;k++)
temp4=temp4+U.A[i][k]*Xn[k];
Xn[i]=(Y[i]-temp4)/U.A[i][i];
}
return Xn;
}
int main()
{
Matrix B(4);
B.Input();
double *X;
X=Dooli(B);
cout<<"~~~~解得:"<<endl;
for(int i=0;i<B.size;i++)
cout<<"X["<<i<<"]:"<<X[i]<<" ";
cout<<endl<<"呵呵呵呵呵";
return 0;
}
資源簡介:三角分解法中的lu分解法,用道立特分解法實(shí)現(xiàn)的數(shù)值方法程序
上傳時(shí)間: 2014-01-15
上傳用戶:lizhizheng88
資源簡介:#include "iostream" using namespace std; class Matrix { private: double** A; //矩陣A double *b; //向量b public: int size; Matrix(int ); ~Matrix(); friend double* Dooli(Matrix& ); void Input(); ...
上傳時(shí)間: 2018-05-20
上傳用戶:Aa123456789
資源簡介:用杜利特爾分解法求解方程組,對矩陣A分解成為兩個(gè)矩陣U和L,再應(yīng)用矩陣U和L來達(dá)到求解方程組的目的
上傳時(shí)間: 2013-12-21
上傳用戶:redmoons
資源簡介:杜里特爾分解法.c改進(jìn)平方根法.c拉格朗日插值法.cpp牛頓迭代.cpp梯形法積分.cpp追趕法.c 杜里特爾分解法.c改進(jìn)平方根法.c拉格朗日插值法.cpp牛頓迭代.cpp梯形法積分.cpp追趕法.c
上傳時(shí)間: 2016-12-10
上傳用戶:偷心的海盜
資源簡介:數(shù)值計(jì)算方法的程序: 加速迭代 牛頓迭代 Gauss 杜里特爾分解法 克洛特 追趕法 平方根法 改進(jìn)平方根法 雅可比迭代 高斯 賽德爾迭代 拉格朗日插值法 分段線性插值 分段拋物線插值
上傳時(shí)間: 2013-12-27
上傳用戶:vodssv
資源簡介:這是用vc編的LU分解法,也叫杜利 特兒法,子過程LUDCMP將矩陣分解 為上三角和下三角矩陣,子過程LU BKSB利用LUDCMP的分解結(jié)果得到線 性方程組的解
上傳時(shí)間: 2014-09-07
上傳用戶:dave520l
資源簡介:vc++實(shí)現(xiàn)線性方程組求解 1全選主元高斯消元法 2全選主元高斯-約當(dāng)消元法 3三對角方程組的追趕法 4一般帶型方程組求解 5對稱方程組的分解法 6對稱正定方程組的平方根法 7大型稀疏方程組全選主元高斯-約當(dāng)法 8托伯利茲方程組的列文遜...
上傳時(shí)間: 2014-01-17
上傳用戶:Zxcvbnm
資源簡介:解線性方程組的一種行主元分解法
上傳時(shí)間: 2014-01-02
上傳用戶:gtzj
資源簡介:數(shù)值分析算法矩陣的LU分解法
上傳時(shí)間: 2013-12-24
上傳用戶:思琦琦
資源簡介:矩陣直接三角分解法的c++語言實(shí)現(xiàn)
上傳時(shí)間: 2013-12-19
上傳用戶:wanghui2438
資源簡介:LU分解法,數(shù)值分析最基本的!
上傳時(shí)間: 2015-02-22
上傳用戶:h886166
資源簡介:數(shù)值計(jì)算方法 LU分解法
上傳時(shí)間: 2015-02-26
上傳用戶:tyler
資源簡介:數(shù)值分析三角直接分解法
上傳時(shí)間: 2015-03-01
上傳用戶:zgu489
資源簡介:數(shù)值計(jì)算中的Doolittle分解法(含有緊湊方式的解法),是用VC++編寫的
上傳時(shí)間: 2013-12-19
上傳用戶:royzhangsz
資源簡介:LU分解法求解線性方程組的VB.NET源碼.里面有詳細(xì)的使用說明.
上傳時(shí)間: 2014-01-04
上傳用戶:netwolf
資源簡介:用Matlab語言實(shí)現(xiàn)線性方程組的全主元三角分解法.PDF
上傳時(shí)間: 2015-04-25
上傳用戶:stella2015
資源簡介:應(yīng)用LU分解法計(jì)算矩陣的程序 C++制作 未編譯,已經(jīng)測試
上傳時(shí)間: 2013-12-23
上傳用戶:zhangliming420
資源簡介:LU分解法解線性方程組,內(nèi)含LU分解函數(shù)以及調(diào)用的例子
上傳時(shí)間: 2013-12-17
上傳用戶:蟲蟲蟲蟲蟲蟲
資源簡介:數(shù)值與符號(hào)計(jì)算LU分解法,運(yùn)用LU分解函數(shù)求解Ax=b的矩陣運(yùn)算
上傳時(shí)間: 2014-01-23
上傳用戶:sdq_123
資源簡介:用LU分解法求解線性方程組的c++程序,有用的數(shù)值分析程序
上傳時(shí)間: 2013-12-11
上傳用戶:xiaoyunyun
資源簡介:PQ分解法,有些還需要改進(jìn),該程序所對應(yīng)的例子是東南大學(xué)陳珩編的《電力系統(tǒng)穩(wěn)態(tài)分析(第二版)》的例4-5
上傳時(shí)間: 2015-07-16
上傳用戶:chenlong
資源簡介:平均因子分解法,適用于正定矩陣First, let s recall the definition of the Cholesky decomposition: Given a symmetric positive definite square matrix X, the Cholesky decomposition of X is the factorization X=U U, where U is the square root matr...
上傳時(shí)間: 2013-12-24
上傳用戶:啊颯颯大師的
資源簡介:三角分解法,對于數(shù)值計(jì)算的朋友可能會(huì)有一定的幫助
上傳時(shí)間: 2014-01-01
上傳用戶:cc1015285075
資源簡介:經(jīng)驗(yàn)?zāi)J椒纸夥ㄋ惴? 發(fā)明人法國人frandlin
上傳時(shí)間: 2013-11-25
上傳用戶:lps11188
資源簡介:用語言編寫的解線性方程組的直接方法(包含Gauss順序消去法、Gauss列主元素消去法、Doolittle三角分解法)
上傳時(shí)間: 2015-08-12
上傳用戶:洛木卓
資源簡介:LDL分解法,用于求解大型的線性方程組。此程序中最多能解100維的,速度還不錯(cuò)
上傳時(shí)間: 2015-08-16
上傳用戶:Miyuki
資源簡介:用Gauss消去法和Doolittle三角分解法求解解線性方程組的程序源代碼.
上傳時(shí)間: 2014-12-04
上傳用戶:jing911003
資源簡介:基于PQ分解法的電力系統(tǒng)潮流計(jì)算,計(jì)算速度優(yōu)于基于牛頓法的潮流計(jì)算程序
上傳時(shí)間: 2015-08-19
上傳用戶:xiaodu1124
資源簡介:數(shù)值分析中的求解算法-直接三角分解法 程序用C++語言編寫。經(jīng)過編譯測試
上傳時(shí)間: 2014-12-08
上傳用戶:a3318966
資源簡介:譜估計(jì) (1)修正協(xié)方差法 (2)多重信號(hào)分類(MUSIC)算法 (3)ESPRIT算法 (4)皮薩論科(Pisarenko)諧波分解法 并對各算法進(jìn)行分析。 解壓后即可在MATLAB上運(yùn)行
上傳時(shí)間: 2015-09-16
上傳用戶:cc1015285075