資源描述:
《數(shù)值計(jì)算方法上機(jī)報(bào)告》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、2021年8月29日星期日提醒:此為結(jié)構(gòu)化文檔(論文水平),可打開文檔結(jié)構(gòu)圖(目錄)來輔助閱覽數(shù)值計(jì)算方法上機(jī)報(bào)告一、列主元素高斯消去法1.程序說明(1)程序設(shè)計(jì)思想主要思想是通過初等變換消去方程組系數(shù)矩陣主對(duì)角線以下的元素,而使方程組化為等價(jià)的上三角方程組,再通過回代求出方程組的解。為避免在消元過程確定乘數(shù)時(shí)所用除數(shù)是零或絕對(duì)值小的數(shù),通過列選主元,將絕對(duì)值大的元素行交換到主對(duì)角線上。列選主元是當(dāng)消元到第k步時(shí),從k列的以下(包括)的各元素中選出絕對(duì)值最大的,行交換到的位置上。交換系數(shù)矩陣中的兩行(包括常數(shù)項(xiàng)),只相當(dāng)于兩個(gè)方程的位置交換了,
2、因此,列選主元不影響解的結(jié)果。列選主元消元所得系數(shù)矩陣已經(jīng)是上三角矩陣,因此只要記錄其換行次數(shù)即可輕易求得該方程組系數(shù)矩陣的行列式值。由于并非所有方程組都有惟一解,因此對(duì)于奇異方程組,程序針對(duì)消元后的系數(shù)矩陣進(jìn)行檢測(cè),發(fā)現(xiàn)全零行則不予繼續(xù)求解,而是輸出無惟一解信息提示。(2)程序流程圖(3)程序使用說明本程序使用的是列主元素消去法,是一種直接法,理論上可用于精確求解所有線性代數(shù)方程組,是解低階稠密矩陣方程組及某些大型稀疏方程組(如大型帶狀方程組)的有效方法。作為直接法,它的優(yōu)點(diǎn)是可以預(yù)先估計(jì)計(jì)算的工作量。由于列選主元比全選主元運(yùn)算量小,且一般可
3、以滿足精度要求,因此列選主元法是十分常用的計(jì)算機(jī)算法。第8頁共8頁2021年8月29日星期日提醒:此為結(jié)構(gòu)化文檔(論文水平),可打開文檔結(jié)構(gòu)圖(目錄)來輔助閱覽使用時(shí)只需要在程序所在文件夾創(chuàng)建一個(gè)in.txt文件,在其中依次輸入方程組的階次和增廣矩陣,執(zhí)行本程序就可以自動(dòng)在程序所在文件夾建立一個(gè)out.txt文件輸出方程組的解和其系數(shù)矩陣行列式的值。詳細(xì)使用說明見程序注釋。1.計(jì)算結(jié)果本程序我運(yùn)行并驗(yàn)證過,已經(jīng)沒有問題了。有in、out,in1、out1,in2、out2三次運(yùn)行結(jié)果保存下來了。針對(duì)老師給定的題目的運(yùn)行結(jié)果存在了out2中,結(jié)果
4、如下:2.編程特色與創(chuàng)新本程序做到了精約明了,重復(fù)利用了一些變量數(shù)組,還排除了奇異方程組的干擾,并順便求解了系數(shù)矩陣的行列式值。二、LU分解法1.程序說明(1)程序設(shè)計(jì)思想本程序用的LU分解法屬于矩陣分解法,是高斯消去法的一種變形。如果一個(gè)線性方程組主子式不為零,則可將方程組的系數(shù)矩陣惟一分解為一個(gè)單位下三角陣L和一個(gè)上三角陣U,之后兩次回代即可得解。(2)程序流程圖第8頁共8頁2021年8月29日星期日提醒:此為結(jié)構(gòu)化文檔(論文水平),可打開文檔結(jié)構(gòu)圖(目錄)來輔助閱覽(1)程序使用說明本程序使用的是LU分解法,是一種直接法,理論上可用于精確
5、求解所有線性代數(shù)方程組,是解低階稠密矩陣方程組及某些大型稀疏方程組(如大型帶狀方程組)的有效方法。作為直接法,它的優(yōu)點(diǎn)是可以預(yù)先估計(jì)計(jì)算的工作量。使用時(shí)只需要在程序所在文件夾創(chuàng)建一個(gè)in.txt文件,在其中依次輸入方程組的階次和增廣矩陣,執(zhí)行本程序就可以自動(dòng)在程序所在文件夾建立一個(gè)out.txt文件,依次輸出l矩陣、u矩陣、該方程組的解向量及其系數(shù)矩陣的行列式值。詳細(xì)使用說明見程序注釋。2.計(jì)算結(jié)果本程序我運(yùn)行并驗(yàn)證過,已經(jīng)沒有問題了。有in、out,in1、out1,in2、out2三次運(yùn)行結(jié)果保存下來了。針對(duì)老師給定的題目的運(yùn)行結(jié)果存在了o
6、ut2中,結(jié)果如下:3.編程特色與創(chuàng)新本程序做到了精約明了,重復(fù)利用了一些變量數(shù)組,還排除了奇異方程組的干擾,并順帶求出了系數(shù)矩陣的行列式值。輸出結(jié)果都用了文字說明,一目了然。二、拉格朗日插值1.程序說明(1)程序設(shè)計(jì)思想用插值基函數(shù)構(gòu)造某個(gè)簡(jiǎn)單函數(shù)作為不便于處理或計(jì)算的函數(shù)的近似值,然后通過處理簡(jiǎn)單函數(shù)獲得不便處理或計(jì)算的函數(shù)的近似結(jié)果。第8頁共8頁2021年8月29日星期日提醒:此為結(jié)構(gòu)化文檔(論文水平),可打開文檔結(jié)構(gòu)圖(目錄)來輔助閱覽(1)程序流程圖(2)程序使用說明本程序使用的是拉格朗日插值法,只需要?jiǎng)?chuàng)建一個(gè)in.txt文件,在其中
7、依次輸入插值多項(xiàng)式的次數(shù)、已知點(diǎn)的橫縱坐標(biāo)、和待估點(diǎn)的橫坐標(biāo)。執(zhí)行本程序就可以自動(dòng)建立一個(gè)out.txt文件輸出待估點(diǎn)的縱坐標(biāo)。特別要注意輸入數(shù)據(jù)的格式,一定要輸入的點(diǎn)數(shù)比插值多項(xiàng)式的次數(shù)多一。詳細(xì)使用說明見程序注釋。2.計(jì)算結(jié)果我用的驗(yàn)證性函數(shù)1是,輸入的插值橫坐標(biāo)是1,(out.txt)輸出結(jié)果為-1;驗(yàn)證性函數(shù)2是,輸入的插值橫坐標(biāo)是0.5,(out1.txt)輸出結(jié)果為-1.875。而針對(duì)給定的題目2次插值的結(jié)果(out2.txt,out3.txt)為18.8638和18.3638,由于給了4個(gè)點(diǎn),因此可以進(jìn)行3次插值,結(jié)果(out4.
8、txt,out5.txt)為18.3254和17.78833.編程特色與創(chuàng)新本程序十分簡(jiǎn)短,主要是因?yàn)槔窭嗜詹逯祷瘮?shù)十分有規(guī)律,由于核心算法十分簡(jiǎn)