




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、計(jì)算方法實(shí)驗(yàn)報告專業(yè)班級: 學(xué)生姓名: 學(xué)生學(xué)號:實(shí)驗(yàn)名稱:實(shí)驗(yàn)一:非線性方程求根迭代法實(shí)驗(yàn)二:求解線性方程組(1)實(shí)驗(yàn)三:求解線性方程組(2)實(shí)驗(yàn)四:數(shù)值積分實(shí)驗(yàn)五:數(shù)值微分實(shí)驗(yàn)一:一、實(shí)驗(yàn)名稱非線性方程求根迭代法二、實(shí)驗(yàn)?zāi)康?1) 熟悉非線性方程求根簡單迭代法,牛頓迭代及牛頓下山法(2) 能編程實(shí)現(xiàn)簡單迭代法,牛頓迭代及牛頓下山法(3) 認(rèn)識選擇迭代格式的重要性(4) 對迭代速度建立感性的認(rèn)識;分析實(shí)驗(yàn)結(jié)果體會初值對迭代的影響三、實(shí)驗(yàn)內(nèi)容用牛頓下山法解方程(初值為0.6)輸入:初值,誤差限,迭代最大次數(shù),下山最大次數(shù)輸出:近似根各步下山因子 四、基本原理(計(jì)算公式)求非線性方程組的解是科學(xué)
2、計(jì)算常遇到的問題,有很多實(shí)際背景各種算法層出不窮,其中迭代是主流算法。只有建立有效的迭代格式,迭代數(shù)列才可以收斂于所求的根。因此設(shè)計(jì)算法之前,對于一般迭代進(jìn)行收斂性的判斷是至關(guān)重要的。牛頓法也叫切線法,是迭代算法中典型方法,只要初值選取適當(dāng),在單根附近,牛頓法收斂速度很快,初值對于牛頓迭代至關(guān)重要。當(dāng)初值選取不當(dāng)可以采用牛頓下山算法進(jìn)行糾正。一般迭代: 牛頓公式:牛頓下山公式: 下山因子下山條件五、算法設(shè)計(jì)與實(shí)現(xiàn)(流程圖)牛頓下山算法見流程圖:圖3.2牛頓下山算法流程圖六、個人理解:這個問題的關(guān)鍵之處不是公式的復(fù)雜性,而是如何對算法的實(shí)現(xiàn)提供一個條理清晰且方法合理的if嵌套,這個算法中運(yùn)用了許
3、多判斷,如何進(jìn)行其判斷結(jié)果的返回將是解決這個問題的重中之重。把這個問題弄清楚,再結(jié)合本身并不復(fù)雜的算法公式,這個問題就可解了。這個程序開始花費(fèi)了我很長時間搞清楚如何進(jìn)行判斷返回的運(yùn)算來解決if語句嵌套。七、輸入與輸出圖1圖2八、結(jié)果討論和分析可見,該程序的輸出分為兩個情況,兩者的差別是初值選取的不同,所以說,牛頓法的收斂性依賴于初值x0的選取,如果x0偏離x的準(zhǔn)確值較遠(yuǎn),則牛頓法將可能發(fā)散。所以要引入牛頓下山法來避免這一情況。所以,當(dāng)圖2情況下,初值為0.6的時候,會進(jìn)行牛頓下山法使結(jié)果可以進(jìn)行再次迭代,解決了牛頓法初值選取問題。實(shí)驗(yàn)二:一、實(shí)驗(yàn)名稱求解線性方程組(gauss - seidel
4、 迭代法)二、實(shí)驗(yàn)?zāi)康?1) 熟悉求解線性方程組的有關(guān)理論和方法;(2) 能編程實(shí)現(xiàn)雅可比及高斯-塞德爾迭代法、列主元高斯消去法、約當(dāng)消去,追趕法(3) 通過測試,進(jìn)一步了解各種方法的優(yōu)缺點(diǎn)(4) 根據(jù)不同類型的方程組,選擇合適的數(shù)值方法三、實(shí)驗(yàn)內(nèi)容用gauss - seidel 迭代法求解方程組輸入:系數(shù)矩陣a,最大迭代次數(shù)n,初始向量,誤差限e輸出:解向量四、基本原理(計(jì)算公式)無論是三次樣條還是擬合問題最終都?xì)w結(jié)為線性方程組,求解線性方程組在數(shù)值分析中非常重要,在工程計(jì)算中也不容忽視。線性方程組大致分迭代法和直接法。只有收斂條件滿足時,才可以進(jìn)行迭代。雅可比及高斯-塞德爾是最基本的兩類迭
5、代方法,最大區(qū)別是迭代過程中是否引用新值進(jìn)行剩下的計(jì)算。消元是最簡單的直接法,并且也十分有效的,列主元高斯消去法對求解一般的線性方程組都適用,同時可以用來求矩陣對應(yīng)的行列式。約當(dāng)消去實(shí)質(zhì)是經(jīng)過初等行變換將系數(shù)矩陣化為單位陣,主要用來求矩陣的逆。在使用直接法,要注意從空間、時間兩方面對算法進(jìn)行優(yōu)化。高斯-塞德爾迭代: 五、算法設(shè)計(jì)與實(shí)現(xiàn)(流程圖,個人理解)圖4.1g-s迭代算法流程圖個人理解:該算法最考驗(yàn)人的地方在于對運(yùn)算公式的理解,這個公式相對于其他幾個實(shí)驗(yàn)來說是最難的,其原因在于要用到多重嵌套循環(huán),而且其中對數(shù)組的運(yùn)用對于很多同學(xué)來說也是比較困難的。只要將其中依次將數(shù)組的值的和對另一個數(shù)組賦
6、值的原理搞清楚以后,這個問題將很容易解決,所以,這一點(diǎn),也是這個程序最考驗(yàn)人的地方。六、輸入與輸出七、結(jié)果討論和分析對于求解行列式來說,一般的方法很難求出,只能通過之前步驟的結(jié)果一步步地將結(jié)果求得,在這些迭代中,選取一個好的迭代方式,既避免了可能存在的發(fā)散情況,又加快了收斂次數(shù)。上兩圖說明高斯賽德爾迭代對于某些迭代來說還是有缺陷的,并不能解出有效結(jié)果。實(shí)驗(yàn)三:一、實(shí)驗(yàn)名稱求解線性方程組(選主元高斯消去)二、實(shí)驗(yàn)?zāi)康模?)熟悉求解線性方程組的有關(guān)理論和方法;(2)能編程實(shí)現(xiàn)雅可比及高斯-塞德爾迭代法、列主元高斯消去法、約當(dāng)消去,追趕法(3)通過測試,進(jìn)一步了解各種方法的優(yōu)缺點(diǎn)(4)根據(jù)不同類型的
7、方程組,選擇合適的數(shù)值方法三、實(shí)驗(yàn)內(nèi)容用選主元高斯消去求行列式值四、基本原理(計(jì)算公式)提示: a.b. 消元結(jié)果直接存儲在系數(shù)矩陣中c. 當(dāng)消元過程發(fā)生兩行對調(diào)的情況為偶數(shù)次時,行列式值為對角線乘積,否則為對角線乘積的相反數(shù)2(5)用選主元約當(dāng)消去分別對矩陣求其逆矩陣,若不可逆輸出奇異標(biāo)志和提示:五、算法設(shè)計(jì)與實(shí)現(xiàn)(流程圖)圖4.3列主元的高斯消去流程圖六、個人理解:我感覺選主元高斯消去編程稍微有一些困難,難在對公式的理解,還有對數(shù)組的處理。可能我從一開始就理解有誤,只是把握住了其中心思想,但是對其函數(shù)的具體實(shí)現(xiàn)還是存在一些偏差,導(dǎo)致輸出結(jié)果并不是很理想。七、輸入與輸出八、結(jié)果討論和分析感覺
8、我這個程序運(yùn)行還是有些問題,無法實(shí)現(xiàn)某些功能,僅僅能夠解決行列式的最終求值問題。實(shí)驗(yàn)四:一、實(shí)驗(yàn)名稱數(shù)值積分二、實(shí)驗(yàn)?zāi)康?1) 熟悉復(fù)化梯形方法、復(fù)化simpson方法、梯形遞推算法、龍貝格算法;(2) 能編程實(shí)現(xiàn)復(fù)化梯形方法、復(fù)化simpson方法、梯形遞推算法、龍貝格算法;(3) 理解并掌握自適應(yīng)算法和收斂加速算法的基本思想;(4) 分析實(shí)驗(yàn)結(jié)果體會各種方法的精確度,建立計(jì)算機(jī)求解定積分問題的感性認(rèn)識三、實(shí)驗(yàn)內(nèi)容(1) 用龍貝格算法計(jì)算輸入:積分區(qū)間,誤差限輸出:序列tn,sn,cn,rn及積分結(jié)果四、基本原理(計(jì)算公式)在許多實(shí)際問題中,常常需要計(jì)算定積分的值。根據(jù)微積分學(xué)基本定理,若被
9、積函數(shù)f(x)在區(qū)間a,b上連續(xù),只要能找到f(x)的一個原函數(shù)f(x),便可利用牛頓-萊布尼茲公式求得積分值。但是在實(shí)際使用中,往往遇到如下困難,而不能使用牛頓-萊布尼茲公式。(1) 找不到用初等函數(shù)表示的原函數(shù)(2) 雖然找到了原函數(shù),但因表達(dá)式過于復(fù)雜而不便計(jì)算(3) f(x)是由測量或計(jì)算得到的表格函數(shù)由于以上種種困難,有必要研究積分的數(shù)值計(jì)算問題。利用插值多項(xiàng)式 則積分轉(zhuǎn)化為,顯然易算。稱為插值型求積公式。最簡單的插值型求積公式是梯形公式和simpson公式,。當(dāng)求積結(jié)點(diǎn)提供較多,可以分段使用少結(jié)點(diǎn)的梯形公式和simpson公式,并稱為復(fù)化梯形公式、復(fù)化simpson公式。如步長未知
10、,可以通過誤差限的控制用區(qū)間逐次分半的策略自動選取步長的方法稱自適應(yīng)算法。梯形遞推公式給出了區(qū)間分半前后的遞推關(guān)系。由梯形遞推公式求得梯形序列,相鄰序列值作線性組合得simpson序列, simpson序列作線性組合得柯特斯序列, 柯特斯序列作線性組合的龍貝格序列。若|r2-r1|e,則輸出r2;否則依此類推。如此加工數(shù)據(jù)的過程叫龍貝格算法,如下圖所示:復(fù)化梯形公式復(fù)化simpson公式梯形遞推公式加權(quán)平均公式: 龍貝格算法大大加快了誤差收斂的速度,由梯形序列o(h2) 提高到龍貝格序列的o(h8)五、算法設(shè)計(jì)與實(shí)現(xiàn)(流程圖)圖2.2梯形遞推算法流程圖圖2.3龍貝格算法流程圖(1) 龍貝格算法
11、見流程圖六、個人理解龍貝格算法其實(shí)是在梯形遞推的基礎(chǔ)之上生成的一種精度高,而且收斂速度也較快的一種算法。對于梯形算法來說,程序比較容易編寫,而龍貝格算法,程序中需要注意用龍貝格算法加速收斂的時候如何處理判斷以后生成的返回值才能使程序正常運(yùn)行。而且,對于本題的特殊性,對于積分的函數(shù)中存在分母為x的情況,在此情況下,就必須要討論x為0溢出的情況,剛開始編好的程序總是出現(xiàn)莫名其妙的輸出,后來才發(fā)現(xiàn)是出現(xiàn)了分母為0的情況。所以,在編程中,要注意細(xì)節(jié),往往一個很好的程序,某一個不起眼的細(xì)節(jié)很可能影響整個程序的正常運(yùn)行。還有最后編寫防止溢出的操作函數(shù)的時候,=不小心寫為=,也找了很久的錯誤。這些都是非常低
12、級的錯誤,但是因?yàn)榇中模匀怀霈F(xiàn)了。所以,以后編程要認(rèn)真。七、輸入與輸出八、結(jié)果討論和分析龍貝格算法可以達(dá)到預(yù)期目的,求得所需要的結(jié)果。但無法分析出是否節(jié)約了時間和效率,但絕對是個可行的辦法。實(shí)驗(yàn)五:一、實(shí)驗(yàn)名稱微分方程的差分方法二、實(shí)驗(yàn)?zāi)康模?)熟悉數(shù)值微分中euler法,改進(jìn)euler法,rung-kutta方法;(2)能編程實(shí)現(xiàn)euler法,改進(jìn)euler法,rung-kutta方法;(3)通過實(shí)驗(yàn)結(jié)果分析各個算法的優(yōu)缺點(diǎn);(4)明確步長對算法的影響并理解變步長的rung-kutta方法三、實(shí)驗(yàn)內(nèi)容(1) 0 x1取h=0.1時用euler法,改進(jìn)euler法,rung-kutta方法求
13、其數(shù)值解并與精確解進(jìn)行比較。輸入:求解區(qū)間,初值,數(shù)值解個數(shù)輸出:數(shù)值解四、基本原理(計(jì)算公式)在許多科學(xué)技術(shù)問題中,建立的模型常常以常微分方程的形式表示。然而,除了少數(shù)特殊類型的常微分方程能用解析方法求其精確解外,要給出一般方程解析解的表達(dá)式是困難的。所以只能用近似方法求其數(shù)值解,在實(shí)際工作中常用計(jì)算機(jī)求常微分方程的數(shù)值解。所謂常微分方程的數(shù)值解即對于常微分方程初值問題計(jì)算出在一系列節(jié)點(diǎn) a = x0 x1 xn= b 處的未知函數(shù) y(x)近似值y0,y1,yn,即找到一系列離散點(diǎn)(x0,y0)(x1,y1)(x2,y2)(xn,yn)近似滿足常微分方程。數(shù)值解法的基本思想用差商代替導(dǎo)數(shù),實(shí)現(xiàn)連續(xù)問題離散化,選取不同的差商代替導(dǎo)數(shù)可以得到不同公式。改進(jìn)歐拉公式是常用方法之一,包括預(yù)測和校正兩步。先用歐拉公式進(jìn)行預(yù)報,再將預(yù)報值代入梯形公式進(jìn)行校正,從而達(dá)到二階精度。通過龍格-庫塔法我們可以獲得更高精度。經(jīng)典龍格-庫塔法即在區(qū)間xn,xn+1取四點(diǎn),并對這四點(diǎn)的斜率進(jìn)行加權(quán)平均作為平均斜率,通過泰勒公式尋找使局部截斷誤差為o(h5)(即4階精度)的參數(shù)滿足條件。改進(jìn)的歐拉公式: 預(yù)測校正四階(經(jīng)典)龍格-庫塔公式五、算法設(shè)計(jì)與實(shí)現(xiàn)(流程圖)圖5.3經(jīng)典龍格庫塔算法六、個人理解由于該算法的步驟很少,而且主要步驟很集中,所以編寫程序非常簡單,即將流程圖中的替代過程稍
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 河北工藝美術(shù)職業(yè)學(xué)院《地下工程項(xiàng)目管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 硅湖職業(yè)技術(shù)學(xué)院《信息系統(tǒng)分析與設(shè)計(jì)實(shí)訓(xùn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025河南省安全員A證考試題庫附答案
- 2025山西省建筑安全員知識題庫
- 南京理工大學(xué)泰州科技學(xué)院《機(jī)械CAD-CAM》2023-2024學(xué)年第二學(xué)期期末試卷
- 石家莊城市經(jīng)濟(jì)職業(yè)學(xué)院《美術(shù)鑒賞》2023-2024學(xué)年第二學(xué)期期末試卷
- 云南現(xiàn)代職業(yè)技術(shù)學(xué)院《汽車標(biāo)準(zhǔn)與法規(guī)》2023-2024學(xué)年第二學(xué)期期末試卷
- 電梯保養(yǎng)合同-文書模板
- 2024年中學(xué)教學(xué)年終工作總結(jié)范本
- 新本月工作計(jì)劃
- 門診常見疾病護(hù)理常規(guī)課件
- 數(shù)字化時代的智慧課堂建設(shè)與應(yīng)用
- 初中九年級美術(shù)期末藝術(shù)測評指標(biāo)試卷及答案
- 藥品經(jīng)營質(zhì)量管理制度樣本
- 有機(jī)農(nóng)業(yè)概述課件
- 生產(chǎn)加工型小微企業(yè)安全管理考試(含答案)
- 沙子檢測報告
- 2023-2024學(xué)年部編版必修下冊 1-1 《子路、曾皙、冉有、公西華侍坐》教案2
- 無線電測向幻燈教材課件
- 第1課《我們的閑暇時光》課件
- 商務(wù)ktv項(xiàng)目計(jì)劃書
評論
0/150
提交評論