數(shù)值分析試驗(yàn)一非線性方程組求解_第1頁(yè)
數(shù)值分析試驗(yàn)一非線性方程組求解_第2頁(yè)
數(shù)值分析試驗(yàn)一非線性方程組求解_第3頁(yè)
數(shù)值分析試驗(yàn)一非線性方程組求解_第4頁(yè)
數(shù)值分析試驗(yàn)一非線性方程組求解_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)值分析實(shí)驗(yàn)報(bào)告專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班級(jí):14漢(2)學(xué)號(hào):20141501069姓名:于童指導(dǎo)教師:馬季驪老師實(shí)驗(yàn)項(xiàng)目非線性方程組求解在許多實(shí)際中常常會(huì)遇到求解非線性方程或者非線性方程組的問(wèn)題,方程的根可以是實(shí)數(shù)也可以是復(fù)數(shù)。對(duì)于高次代數(shù)方程,由代數(shù)基本定理知多項(xiàng)式的根的數(shù)目和它的次數(shù)相同。但是對(duì)于超越方程情況就復(fù)雜的多了,若果有解,其解可能是一個(gè)或者幾個(gè),也可能是無(wú)窮多個(gè)。求解方程的根,有兩種情況是最常遇到的:1.要求定出在給定范圍內(nèi)的某個(gè)根,而根的粗略位置已經(jīng)從問(wèn)題的物理背景或應(yīng)用其他方法知道了;2.定出方程的全部根,而根的樹木和位置事先并不知道,這在解超越方程時(shí)時(shí)比較困難的。這里將介

2、紹幾種對(duì)這兩類方程均適用的較為有效的方法。求解非線性方程的根的方法。求f(x)=x3-3x-1=0在x0=2附近的實(shí)根,精確到4位有效數(shù)字。(1)用對(duì)分區(qū)間法。(2)用迭代法。(3)用Newton法。(4)用弦位法。法對(duì)分區(qū)間法算法思想:找出的根的存在區(qū)間(a,b),并計(jì)算出端點(diǎn)處的函數(shù)值f(a),f(b);ab計(jì)算f(x)在區(qū)間中點(diǎn)的值f(-)ab判斷:若f(-2-)02-,則停止計(jì)算。否則,選取與它異號(hào)的一端組成新的區(qū)間。重復(fù)步驟(b)(c),直到區(qū)間縮小到允許的誤差范圍之內(nèi)。此時(shí),區(qū)間中點(diǎn)即可作為所要求的根。X=9(X)。為保證中(X)收斂,應(yīng)該滿算法思想:1.選取初值X0,并確定方程f

3、(X)=0的等價(jià)形式足Lipschitz條件且Lipschitz常數(shù)L<1。2.計(jì)算Xi二中(X0)3.判別:如果X1-X0<則停止計(jì)算,否則,重復(fù)步驟(b)(c)(可以預(yù)設(shè)最多重復(fù)次數(shù))。算法思想:選定,計(jì)算f(X0)對(duì)于n=0,1,2,.,Nm用Xn書=Xn-f(Xn)/f(Xn)求并計(jì)算,如果f(Xn+)定0或者IXn-1-Xn(允許誤差),則停止計(jì)算。算法思想:選定初始值|x。,Xi,并計(jì)算f(X0用迭代公式Xn4b=Xnf(Xn:(Xf")(Xn-Xn)計(jì)算X2,再求f(X2);(X1,f(X1)和(X0,判別:如果f(X2)定0則迭代停止;否則,用(X2,f(

4、X2)和(Xi,f(Xi)分別代替f(X。)。重復(fù)計(jì)算(b)(c),直至相鄰兩次迭代值之差在容許范圍之內(nèi)。/MainFrm.cpp:implementationoftheCMainFrameclass/#include"stdafx.h"實(shí)驗(yàn)源代碼#include”20141501069于童實(shí)驗(yàn)一.h"#include"math.h"#include"MainFrm.h"#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILEstaticcharTHIS_FILE=_FILE_;#endi

5、f/CMainFrameIMPLEMENT_DYNCREATE(CMainFrame,CFrameWnd)BEGIN_MESSAGE_MAP(CMainFrame,CFrameWnd)AFX_MSG_MAP(CMainFrame)ON_WM_CREATE()ON_COMMAND(ID_dfqj,Ondfqj)ON_COMMAND(ID_nd,Onnd)ON_COMMAND(ID_dd,Ondd)ON_COMMAND(ID_xw,Onxw)/AFX_MSG_MAPEND_MESSAGE_MAP()staticUINTindicators口=ID_SEPARATOR,/statuslineindi

6、catorID_INDICATOR_CAPS,ID_INDICATOR_NUM,ID_INDICATOR_SCRL,;/CMainFrameconstruction/destructionCMainFrame:CMainFrame()/TODO:addmemberinitializationcodehereCMainFrame:CMainFrame()intCMainFrame:OnCreate(LPCREATESTRUCTlpCreateStruct)if(CFrameWnd:OnCreate(lpCreateStruct)=-1)return-1;if(!m_wndToolBar.Crea

7、teEx(this,TBSTYLE_FLAT,WS_CHILD|WS_VISIBLE|CBRS_TOP|CBRSGRIPPER|CBRSTOOLTIPS|CBRSFLYBY|CBRSSIZEDYNAMIC)|!m_wndToo舊ar.LoadToo舊ar(IDR_MAINFRAME)(TRACE0("Failedtocreatetoolbar'n");return-1;/failtocreateif(!m_wndStatusBar.Create(this)|!m_wndStatusBar.SetIndicators(indicators,sizeof(indicat

8、ors)/sizeof(UINT)(TRACE0("Failedtocreatestatusbar'n");return-1;/failtocreate/TODO:Deletethesethreelinesifyoudon'twantthetoolbarto/bedockablem_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);EnableDocking(CBRS_ALIGN_ANY);DockControlBar(&m_wndToolBar);return0;BOOLCMainFrame:PreCreateWin

9、dow(CREATESTRUCT&cs)(if(!CFrameWnd:PreCreateWindow(cs)returnFALSE;/TODO:ModifytheWindowclassorstylesherebymodifying/theCREATESTRUCTcsreturnTRUE;/CMainFramediagnostics#ifdef_DEBUGvoidCMainFrame:AssertValid()const(CFrameWnd:AssertValid();voidCMainFrame:Dump(CDumpContext&dc)constCFrameWnd:Dump(

10、dc);)#endif/_DEBUG/CMainFramemessagehandlersvoidCMainFrame:Ondfqj()/TODO:Addyourcommandhandlercodeheredoublea=1,b=2,middle;inti=0;CStringdate;CDC*pDC=GetDC();pDC->Rectangle(0,0,10000,10000);while(fabs(b-a)>=0.00001)i+=20;date.Format("%lf”,a);pDC->TextOut(10,60+i,date);date.Format("

11、;%lf”,b);pDC->TextOut(120,60+i,date);middle=(a+b)/2.00;if(middle*middle*middle-3*middle-1<0.00)a=middle;elseb=middle;i+=15;pDC->TextOut(10,10,'對(duì)分區(qū)間法:方程XA3-3X-1=0");pDC->TextOut(10,30,“abmiddle(x)f(x)");date.Format("%lf",middle);pDC->TextOut(240,40+i,date);doubl

12、etemp=middle*middle*middle-3*middle-1;date.Format("%lf",temp);pDC->TextOut(370,40+i,date);CClientDCdc(this);CPenPen;Pen.CreatePen(PS_SOLID,2,RGB(100,100,100)顏色dc.SelectObject(&Pen);voidCMainFrame:Onnd()/TODO:Addyourcommandhandlercodehereintt=0;CDC*pDC=GetDC();pDC->Rectangle(0,0,1

13、0000,10000);CStringdate;pDC->TextOut(10,10,“牛頓法:方程XA3-3X-1=0");pDC->TextOut(20+20,50,"x0:2.000000");doublea=2,b=a-(a*a*a-3*a-1)/(3*a*a-3);inti=0;intss=0;ints=0;while(fabs(b-a)>0.00001)i+=20;t+;ss+;if(t>=10)s=-10;pDC->TextOut(40+s,50+i,"x");date.Format("%d

14、",ss);pDC->TextOut(10+s+40,50+i,date);pDC->TextOut(20+40,50+i,":");date.Format("%lf”,b);pDC->TextOut(80+20,50+i,date);doubletemp=b-(b*b*b-3*b-1)/(3*b*b-3);a=b;b=temp;ReleaseDC(pDC);voidCMainFrame:Ondd()(/TODO:AddyourcommandhandlercodehereCDC*pDC=GetDC();pDC->Rectangle

15、(0,0,10000,10000);pDC->TextOut(10,30,迭代法:方程XA3-3X-1=0,迭代方程為:Xn+1=(3*Xn+1)A1/3");doublea=2;doubleb=pow(3*a+1,1.0/3);inti=0;intss=0;ints=0;intt=0;CStringdate;pDC->TextOut(20+20,50,"x0:2.000000");while(fabs(a-b)>=0.00001)(i+=20;t+;ss+;if(t>=10)s=-10;pDC->TextOut(40+s,50+i,

16、"x");date.Format("%d",ss);pDC->TextOut(50+s+10,50+i,date);pDC->TextOut(60+10,50+i,":");date.Format("%lf",b);pDC->TextOut(70+10,50+i,date);doubletemp=b-(b*b*b-3*b-1)/(3*b*b-3);a=b;b=temp;)voidCMainFrame:Onxw()(/TODO:AddyourcommandhandlercodehereCDC*pDC

17、=GetDC();pDC->Rectangle(0,0,10000,10000);CStringdate;pDC->TextOut(10,10,"玄位法:方程XA3-3X-1=0");pDC->TextOut(20+20,50,"x0:1.000000");doublea=1,b=3;inti=0;intss=0;while(fabs(b-a)>0.00001)(i+=20;ss+;pDC->TextOut(40,50+i,"x");date.Format("%d",ss);pDC-&

18、gt;TextOut(10+40,50+i,date);pDC->TextOut(20+40,50+i,":");date.Format("%lf",b);pDC->TextOut(30+50,50+i,date);doubletemp=b-(b*b*b-3*b-1)/(b*b*b-3*b-1)-(a*a*a-3*a-1)*(b-a);a=b;b=temp;)ReleaseDC(pDC);對(duì)分區(qū)間法58無(wú)標(biāo)題-2014150105疔童實(shí)驗(yàn)一文件但編輯查看凹篇助回求照對(duì)分區(qū)間法二方程XTX-1=Uabmiddlexfx)LOOOOOO2.000

19、0001,50100()-2.1250001,5000002,0000001-750000-0.890G251.7500002.0000001.875000C.0332D3KB750002.0000001*937500a-2,G0G93L8750001,9375001.MS250(L208IGO實(shí)L8750001.9062501.0906250.066094驗(yàn)結(jié)1.87SOOO1.8906261.832813(LU2611n果L8750001.602813K3Z8906-0.0036371.6769061.80261J1-88185900112101.97總90G1.89086。1.87388

20、3DMU37611,8783061.87S8831.871395O.UOOO門L8789061.8793951.879150-fi.0017041.8791501.8793951-B79272-0.0008571.87927?1,8793951.879m33-0.0003931.8793331.879395K873364-0,0001611,793641.6733951-879373-D.OOUU451,8793791.6793951.879387t).000013迭代法S3無(wú)標(biāo)量-2014150106疔堇實(shí)臉一文件日鼐量回萱看他m(Hj求解迭代法:方程*3-321二。,迭代方程為;KnM=G?n+irH3xO:2.000000x1:1.91

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論