計算方法實驗報告范文-數(shù)值計算方法實驗報告
撰寫實驗報告是每個計算方法實驗過后必須完成的事項。以下是陽光網(wǎng)小編要與大家分享的計算方法實驗報告范文,供大家參考!
計算方法實驗報告范文(一)
一、實驗?zāi)康?黑體、四號)
1、所解決的問題實際背景;(宋體、小四)
2、求問題的數(shù)值解的必要性。
二、基本理論及背景
1、經(jīng)典理論的解決方案和局限性;
2、數(shù)值解的算法和理論推導(dǎo);
3、待解決的具體問題。
三、算法設(shè)計及實現(xiàn)
1、程序的流程及各程序模塊之間的層次關(guān)系;
2、程序文件及功能清單。
四、實驗步驟
1、實驗的具體步驟;
2、輸出結(jié)果和初步分析說明。
五、使用說明實驗結(jié)果分析
1、調(diào)試中遇到的問題及對問題的解決方法;
2、算法的復(fù)雜度或測量結(jié)果的精確度分析。
六、算法的改進和實驗總結(jié)
1、算法進一步的發(fā)展和更復(fù)雜的理論介紹、改進;
2、和自己的實驗感想、經(jīng)驗總結(jié)。
七、源程序(帶注釋)
計算方法實驗報告范文(二)
一.題目
對于函數(shù) fx1
15x2 x∈[-1,1], 取 n+1 個基點,xi=-1+ih
(i=0,1,2,…,n),其中 h=2/n。
⑴對 n=2,4,6,8,10 分別作 n 次插值多項式 Pn(x),并在同一坐標系畫出f(x)和 Pn(x)。
⑵在非節(jié)點處計算f(x)和 Pn(x)的最大相對誤差;
max1x1xxifxPnxfx n=2,4,6,8,10
⑶根據(jù)f(x)和 Pn(x)的圖形及最大相對誤差進行比較分析,試尋找插值效果較好的改進方法。
二.算法
思想:
選用牛頓前插公式,用一個適當?shù)暮瘮?shù)Pn(x)作為f(x)的近似函數(shù)。
1.選取等距節(jié)點并算出節(jié)點處的函數(shù)值。將區(qū)間(-1 ,1)均分成n等份,步長h為2/n,在等距節(jié)點x0,x1,x2,…,xn處,f(x)的取值分別為f0,f1,f2, …,fn。
首先在text1中確定輸入的'n值,它決定了我們接下來按幾等分編寫插值多項式。n為2,4,6,8,10中的某個值。
2.計算一階差分△f0, △f1, …, △fn-1
f0f1f0,f1f2f1,...,fnfnfn1
同理分別計算2f,3f,...,nf.
在模塊中定義x()數(shù)組以便于在全局中使用。
ReDim x(n) As Single
For i = 0 To n
x(i) = -1 + (i * h)
Next
且依次為x(i)賦值,再在form2窗體中的第一列顯示出來。之后,通過調(diào)用f函數(shù)來實現(xiàn)對f(i)的依次賦值。調(diào)用過程如下:
Public Function f(x As Single) As Single
f = 1 / (1 + 25 * x * x)
End Function
⒊ 先將label2中的visible屬性設(shè)為faulse,在代碼中進行以下設(shè)置來顯示插分階數(shù):Label2(j + 1).Visible = True,且插分階數(shù)隨著n值的變化而變化。
⒋在模塊中定義a(),b()數(shù)組以便于在全局中使用。通過ReDim a(n, n) As Single語句將a()重新定義為二維數(shù)組,并將各階差分值賦予該數(shù)組。此部分代碼如下:
For j = 0 To n
a(j, 0) = f(x(j))
Next
For j = 1 To n
For i = 0 To n - j
a(i, j) = a(i + 1, j - 1) - a(i, j - 1)
Next
Next
通過ReDim b(n) As String語句將多項式Pn(x)以字符串的形式用b數(shù)組表現(xiàn)出來。然后給b(0)賦初值f(x0):b(0) = a(0, 0),并通過以下代碼來表示出含x差值多項式Pn(x):
For i = 1 To n
For j = 1 To i
If x(j - 1) < 0 Then
b(i) = b(i) & "(x + " & -x(j - 1) & ")"
Else
b(i) = b(i) & "(x - " & x(j - 1) & ")"
End If
Next
s = a(0, i) / m(i) / h ^ i
If s > 0 Then
Label3.Caption = Label3.Caption & " + " & s & b(i)
Else
Label3.Caption = Label3.Caption & s & b(i)
End If
Next
語句中為避免運行時多項式中出現(xiàn)(x- -x0)或a + - b的情況,因此對符號進行了修改。
⒌ 通過調(diào)用m函數(shù)來計算n的階乘。
Public Function m(x As Byte) As Long
Dim i As Byte
m = 1
For i = 1 To x
m = m * i
Next
End Function
6.運行程序顯示差分表和牛頓前插公式
2nf0f0fPnxf0xx02xx0xx1...n0xx0xx1...xxn1h2hnh
三.源程序
點擊下頁還有更多>>>計算方法實驗報告范文