數值分析實驗報告
專業資訊與計算科學班級信計101 姓名學號
協作隊員實驗日期 2013 年 1 月 5 日星期六
成績評定教師簽名批改日期
題目一、 問題提出
給定矩陣,
(1)用matlab函式「eig」求矩陣全部特徵值。
(2)用冪法求a的主特徵值及對應的特徵向量。
(3)用基本qr演算法求全部特徵值(可用matlab函式「qr」實現矩陣的qr分解)。
二、 模型建立
用冪法求a的主特徵值及對應的特徵向量的模型:選取,按照下列公式構造向量序列{}{}
則有迴圈足夠多次後,可以近似得出,
三、 求解方法
(1)a=[2 3 4 5 6;4 4 5 6 7;0 3 6 7 8;0 0 2 8 9;0 0 0 1 0];
a=eig(a)
(2)function [l,v,s]=pmethod(a,x0,eps)
if nargin==2
eps = 1.0e-6;
endv = x0v為主特徵向量
m = 5000迭代步數限制
m = 0;
l = 0;
for(k=1:m)
y = a*v;
m = max(y); %m為按模最大的分量
v = y/m;
if(abs(m - l) l = m; %到所需精度,退出,l為主特徵值
s = k; %s為迭代步數
return;
else
if(k==m)
disp('迭代步數太多,收斂速度太慢!');
l = m;
s = m;
else
l = m;
endendend(3)
function l = rqrtz(a,m)
%qr演算法求矩陣全部特徵值
%已知矩陣:a
%迭代步數:m
%求得的矩陣特徵值:l
a = hess(a);
for i=1:m
n = size(a);
n = n(1,1);
u = a(n,n);
[q,r]=qr(a-u*eye(n,n));
a = r*q+u*eye(n,n);
l = diag(a);
end四、 輸出結果
(1)a = 13.1724 6.5519 1.5957 -0.3908 -0.9291
(2)主特徵值
x = 13.1724
對應的特徵向量
y = 0.7250 1.0000 0.7930 0.3533 0.0268
(3)所有特徵值
x = 13.1724 6.5519 1.5957 -0.9291 -0.3908
五、 結果分析
三種演算法各有優勢,但結果差不多,都較為適用。
數值分析實驗報告 龍貝格演算法
利用matlab編寫龍貝格演算法,並測試。1龍貝格求積演算法matlab主程式 2呼叫函式解題 1寫出龍貝格求積演算法matlab的程式 function t rbg f,a,b,c t zeros 15,4 t 1,1 b a 2 f a f b for k 2 4 sum 0 for i 1 2...
數值分析實驗報告
實驗一題目一 已知函式表如下 試用三次lagrange插值多項式求x 0.5635時的函式值。解 lagrange插值法公式 程式框圖如下 本題中n 4 分析設計思想 設計思路如上面的流程圖所示,用我們學過的c語言程式設計實現。程式清單 include include include float l...
數值分析實驗報告
數值分析 課程設計實驗報告模板 常微分方程資料值解 用龍格 庫塔法分析lorenz方程的特性 一 考慮著名的lorenz方程 其中s,r,b為變化區域內有一定限制的實引數,該方程形式簡單,表面上看並無驚人之處,但由該方程揭示出的許多現象,促使 混沌 成為數學研究的嶄新領域,在實際應用中產生了巨大的影...