不動(dòng)點(diǎn)非線性方程求解_第1頁
不動(dòng)點(diǎn)非線性方程求解_第2頁
不動(dòng)點(diǎn)非線性方程求解_第3頁
不動(dòng)點(diǎn)非線性方程求解_第4頁
不動(dòng)點(diǎn)非線性方程求解_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、MATLAB程序設(shè)技實(shí)踐課程考核1編程實(shí)現(xiàn)以下科學(xué)計(jì)算算法,并舉一例應(yīng)用之,(參考書籍精通MATLAB科學(xué)計(jì)算),王正林等著,電子工業(yè)出版社,2009年)?!安粍?dòng)點(diǎn)非線性方程求解”算法說明:在MATLAB中編程實(shí)現(xiàn)不動(dòng)點(diǎn)迭代法的函數(shù)是:StablePoint。功能:用不動(dòng)點(diǎn)迭代法求函數(shù)的一個(gè)零點(diǎn)。調(diào)用格式:root,n=StablePoint(f,x0,eps)。其中,f為函數(shù)名; x0為初始迭代向量; eps為根的精度; root為求出的函數(shù)零點(diǎn); n為迭代步數(shù)。流程圖:開始輸入?yún)?shù)f,x0,eps迭代算根輸出根值和迭代步數(shù)比較精度是否符合要求N結(jié)束Y源程序代碼:Function root,

2、n=StablePoint(f,x0,eps)%用不動(dòng)點(diǎn)迭代法求函數(shù)的一個(gè)零點(diǎn)%初始迭代量:x0%根的精度:eps%求出的函數(shù)零點(diǎn):root%迭代步數(shù):nif(nargin=2) %輸入?yún)?shù)個(gè)數(shù)為2 eps=1.0e-4;end tol=1; %絕對(duì)誤差限r(nóng)oot=x0;n=0;while(toleps) n=n+1; r1=root; Root=subs(sym(f),findsym(sym(f),r1)+r1; %迭代的核心公式 tol=abs(root-r1);end舉例:采用不動(dòng)點(diǎn)迭代法求方程的一個(gè)根。開始解:流程圖輸入函數(shù)和參數(shù)調(diào)用不動(dòng)點(diǎn)函數(shù)輸出結(jié)果結(jié)束在MATLAB命令窗口中輸入:

3、 r,n=StablePoint(1/sqrt(x)+x-2,0.5)r = 3.8197e-001n = 4結(jié)果說明:從計(jì)算結(jié)果可以看出,經(jīng)過四步迭代,得出方程的一個(gè)根為0.3820 在MATLAB中運(yùn)行情況:2編程解決以下科學(xué)計(jì)算問題。(1) 某工廠2005年度各季度產(chǎn)值(單位:萬元)分別為:450.6、395.9、410.2、450.9,試?yán)L制折線圖和餅圖,并說明圖形的實(shí)際意義。算法說明:首先用subplot對(duì)作圖區(qū)域進(jìn)行分區(qū);在Matlab中編程實(shí)現(xiàn)畫餅圖和折線圖的函數(shù)為Plot和Pie。功能:根據(jù)已知數(shù)據(jù)畫餅圖和折線圖。其中,將每個(gè)季度分別命名為“第一季度”,“第二季度”,“第三季度

4、”,“第四季度”。流程圖:開始調(diào)用subplot,plot,pie函數(shù)輸入數(shù)據(jù)輸出圖像結(jié)束源程序代碼:%折線圖subplot(1,2,1) %分區(qū)畫圖,畫一行,每行兩個(gè),選定第一個(gè)區(qū)為當(dāng)前活動(dòng)區(qū)plot(450.6,395.9,410.2,450.9) %以序列號(hào)為橫坐標(biāo),輸入值為y坐標(biāo)title(2005年度各季度產(chǎn)值-折線圖);%餅狀圖subplot(1,2,2) pie(450.6,395.9,410.2,450.9,1:4,第一季度,第二季度,第三季度,第四季度)title(2005年度各季度產(chǎn)值-餅圖)結(jié)果圖像:結(jié)果分析:從折線圖可以看出該工廠效益變化趨勢(shì),效益在第二季度最低隨后逐漸

5、提高,并在第四季度恢復(fù)到第一季度的水平;從餅狀圖可以看出各個(gè)季度該工廠效益的比例關(guān)系。從這兩個(gè)圖可以合理安排工廠的生產(chǎn)計(jì)劃。在MATLAB中運(yùn)行情況:(2) 根據(jù)繪制平面曲線。并分析參數(shù)a對(duì)其形狀的影響。算法說明:在MATLAB中繪制隱函數(shù)圖形用ezplot繪制;功能:根據(jù)給定值繪制隱函數(shù)圖形其中定義符號(hào)變量a,x,y和函數(shù)eq;設(shè)置變參量aa;設(shè)置圖像坐標(biāo)范圍和時(shí)間間隔;流程圖:開始定義變量a,x,y和函數(shù)eq,變參量aaN為矩陣列數(shù),for i=1:neq1=subs(eq,a,aa(i),用ezplot繪制圖像設(shè)置坐標(biāo)軸和時(shí)間間隔輸出圖像結(jié)束源程序代碼:syms a x y %定義符號(hào)變

6、量eq=1/a2*x2 +y2/(25-a2)-1;aa=0.5:0.5:3.5,5/sqrt(2),3.6:0.5:6.6; %aa矩陣中的數(shù)值m,n=size(aa);for i=1:neq1=subs(eq,a,aa(i); %把eq表達(dá)式中所有的a都用矩陣aa中的數(shù)值代替ezplot(eq1,-20 20) %繪制符號(hào)函數(shù)eq1,橫坐標(biāo)范圍為-20,20drawnowaxis(-20 20 -10 10) %設(shè)置坐標(biāo)軸的范圍pause(0.5) %程序暫停0.5秒end運(yùn)行結(jié)果圖形:結(jié)果分析:時(shí),隨著a增大曲線形狀由長(zhǎng)軸在y軸的橢圓逐漸轉(zhuǎn)變?yōu)閳A(此時(shí));時(shí)a繼續(xù)增大曲線形狀由圓轉(zhuǎn)變?yōu)殚L(zhǎng)

7、軸在x軸的橢圓;a5時(shí)曲線變?yōu)殡p曲線。在MATLAB中運(yùn)行情況:3按要求對(duì)指定函數(shù)進(jìn)行插值和擬合。(1)按表6.4用3次樣條方法插值計(jì)算090范圍內(nèi)整數(shù)點(diǎn)的正切值,然后用5次多項(xiàng)式擬合方法計(jì)算相同的函數(shù)值,并將兩種計(jì)算結(jié)果進(jìn)行比較。表6.4 特殊角的正弦與正切值表a(度)0153045607590sina00.25880.50000.70710.86600.96591.0000tana00.26790.57741.00001.7320(2)按表6.5用3次多項(xiàng)式方法插值計(jì)算1100之間整數(shù)的平方根表表6.5 1100內(nèi)特殊值的平方根表N14916253649648110012345678910

8、算法說明:輸入已知的數(shù)據(jù)作為樣本;設(shè)置插值節(jié)點(diǎn);針對(duì)不同的方法選用相應(yīng)的函數(shù)及格式;流程圖:開始輸入已知數(shù)據(jù)做樣本設(shè)置插值點(diǎn)選用函數(shù)和格式,將已知數(shù)據(jù)與插值點(diǎn)帶入輸出結(jié)果結(jié)束(1)A正弦值算法:源程序代碼:x=0:pi/12:pi/2;y=0 0.2588 0.5000 0.7071 0.8660 0.9659 1.0000;xi=0:pi/180:pi/2; %設(shè)置插值點(diǎn)yi=interp1(x,y,xi,spline) %一維數(shù)據(jù)插值用三次樣條插值法%五次多項(xiàng)式擬合A=polyfit(x,y,5); %A為五次多項(xiàng)式系數(shù)向量yj=polyval(A,xi) %求出函數(shù)近似值運(yùn)行結(jié)果:yi

9、= Columns 1 through 11 0 0.0175 0.0349 0.0524 0.0698 0.0872 0.1045 0.1219 0.1392 0.1564 0.1737 Columns 12 through 22 0.1908 0.2079 0.2249 0.2419 0.2588 0.2756 0.2923 0.3090 0.3255 0.3420 0.3583 Columns 23 through 33 0.3746 0.3907 0.4067 0.4226 0.4384 0.4540 0.4695 0.4848 0.5000 0.5150 0.5299 Columns

10、 34 through 44 0.5446 0.5592 0.5736 0.5878 0.6018 0.6157 0.6293 0.6428 0.6561 0.6691 0.6820 Columns 45 through 55 0.6947 0.7071 0.7193 0.7313 0.7431 0.7547 0.7660 0.7771 0.7880 0.7986 0.8090 Columns 56 through 66 0.8191 0.8290 0.8387 0.8480 0.8571 0.8660 0.8746 0.8829 0.8910 0.8987 0.9062 Columns 67

11、 through 77 0.9135 0.9204 0.9271 0.9335 0.9396 0.9454 0.9510 0.9563 0.9612 0.9659 0.9703 Columns 78 through 88 0.9744 0.9782 0.9817 0.9849 0.9878 0.9904 0.9927 0.9946 0.9963 0.9977 0.9987 Columns 89 through 91 0.9995 0.9999 1.0000yj = Columns 1 through 11 0.0000 0.0174 0.0349 0.0523 0.0697 0.0871 0.

12、1045 0.1218 0.1391 0.1564 0.1736 Columns 12 through 22 0.1908 0.2079 0.2249 0.2419 0.2588 0.2756 0.2924 0.3090 0.3256 0.3420 0.3584 Columns 23 through 33 0.3746 0.3907 0.4067 0.4226 0.4384 0.4540 0.4695 0.4848 0.5000 0.5150 0.5299 Columns 34 through 44 0.5446 0.5592 0.5736 0.5878 0.6018 0.6157 0.629

13、3 0.6428 0.6561 0.6691 0.6820 Columns 45 through 55 0.6946 0.7071 0.7193 0.7313 0.7431 0.7547 0.7660 0.7771 0.7880 0.7986 0.8090 Columns 56 through 66 0.8191 0.8290 0.8386 0.8480 0.8571 0.8660 0.8746 0.8829 0.8910 0.8988 0.9063 Columns 67 through 77 0.9135 0.9205 0.9272 0.9336 0.9397 0.9455 0.9510 0

14、.9563 0.9612 0.9659 0.9703 Columns 78 through 88 0.9743 0.9781 0.9816 0.9848 0.9877 0.9902 0.9925 0.9945 0.9962 0.9975 0.9986 Columns 89 through 910.9994 0.9998 1.0000在MATLAB程序中運(yùn)行情況:結(jié)果分析:通過比較,兩種方法得到的結(jié)果近似相等。B正切值算法源程序代碼:x=0:pi/12:5*pi/12;y=0 0.2679 0.5774 1.0000 1.7320 3.7320;xi=0:pi/180:5*pi/12;yi=in

15、terp1(x,y,xi,spline) %三次樣條插值法%五次多項(xiàng)式擬合A=polyfit(x,y,5);yj=polyval(A,xi)運(yùn)行結(jié)果:yi = Columns 1 through 11 0 0.0184 0.0365 0.0545 0.0724 0.0902 0.1079 0.1255 0.1431 0.1607 0.1784 Columns 12 through 22 0.1961 0.2138 0.2317 0.2497 0.2679 0.2863 0.3048 0.3236 0.3427 0.3620 0.3817 Columns 23 through 33 0.4017

16、 0.4221 0.4429 0.4641 0.4858 0.5079 0.5305 0.5537 0.5774 0.6017 0.6266 Columns 34 through 44 0.6520 0.6780 0.7046 0.7317 0.7593 0.7876 0.8163 0.8456 0.8754 0.9058 0.9367 Columns 45 through 55 0.9681 1.0000 1.0325 1.0658 1.1003 1.1364 1.1743 1.2145 1.2572 1.3028 1.3516 Columns 56 through 66 1.4041 1.

17、4604 1.5211 1.5863 1.6565 1.7320 1.8131 1.9002 1.9936 2.0937 2.2008 Columns 67 through 76 2.3152 2.4374 2.5675 2.7060 2.8532 3.0095 3.1752 3.3506 3.5361 3.7320yj = Columns 1 through 11 -0.0000 0.0235 0.0454 0.0658 0.0850 0.1032 0.1206 0.1375 0.1540 0.1701 0.1862 Columns 12 through 22 0.2022 0.2183 0

18、.2345 0.2511 0.2679 0.2851 0.3028 0.3208 0.3394 0.3585 0.3781 Columns 23 through 33 0.3982 0.4188 0.4400 0.4616 0.4838 0.5065 0.5297 0.5533 0.5774 0.6020 0.6270 Columns 34 through 44 0.6524 0.6783 0.7047 0.7315 0.7588 0.7867 0.8150 0.8440 0.8736 0.9039 0.9351 Columns 45 through 55 0.9670 1.0000 1.03

19、41 1.0693 1.1060 1.1442 1.1841 1.2259 1.2699 1.3162 1.3652 Columns 56 through 66 1.4171 1.4723 1.5310 1.5935 1.6604 1.7320 1.8087 1.8910 1.9793 2.0742 2.1762 Columns 67 through 762.2860 2.4040 2.5310 2.6677 2.8147 2.9727 3.1427 3.3253 3.5214 3.7320結(jié)果分析:通過比較知,角度較小時(shí)五次多項(xiàng)式算得的值較大,角度增大則兩種方法得到的結(jié)果近似相等。在MATL

20、AB中運(yùn)行情況:(2)源程序代碼:%三次多項(xiàng)式插值x=1 4 9 16 25 36 49 64 81 100;y=1 2 3 4 5 6 7 8 9 10;xi=1:100;f=interp1(x,y,xi,cubic) %一維數(shù)據(jù)插值用三次插值法運(yùn)行結(jié)果:f = Columns 1 through 11 1.0000 1.3729 1.7125 2.0000 2.2405 2.4551 2.6494 2.8292 3.0000 3.1636 3.3186 Columns 12 through 22 3.4661 3.6069 3.7422 3.8729 4.0000 4.1237 4.2435 4.3599 4.4730 4.5832 4.6907 Columns 23 through 33 4.7958 4.8988 5.0000 5.0993

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論