数值计算方法大作业

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录

第一章非线性方程求根 (3)

1.1迭代法 (3)

1.2牛顿法 (4)

1.3弦截法 (5)

1.4二分法 (6)

第二章插值 (7)

2.1线性插值 (7)

2.2二次插值 (8)

2.3拉格朗日插值 (9)

2.4分段线性插值 (10)

2.5分段二次插值 (11)

第三章数值积分 (13)

3.1复化矩形积分法 (13)

3.2复化梯形积分法 (14)

3.3辛普森积分法 (15)

3.4变步长梯形积分法 (16)

第四章线性方程组数值法 (17)

4.1约当消去法 (17)

4.2高斯消去法 (18)

4.3三角分解法 (20)

4.4雅可比迭代法 (21)

4.5高斯一赛德尔迭代法 (23)

第五章常积分方程数值法 (25)

5.1显示欧拉公式法 (25)

5.2欧拉公式预测校正法 (26)

5.3改进欧拉公式法 (27)

5.4四阶龙格一库塔法 (28)

数值计算方法

第一章非线性方程求根

1.1迭代法

程序代码:

PriVate Sub Comma nd1_Click()

x0 = Val(InputBox("请输入初始值 x0"))

ep = Val(InputBox(请输入误差限 ep))

f = 0

While f = 0

X1 = (Exp(2 * x0) - x0) / 5

If AbS(XI - x0) V ep Then

Print X1

f = 1

Else

x0 = X1

End If

Wend

End SUb

例:求f(x)=e2x-6x=0 在x=0.5 附近的根(ep=1O1°)

CL ForTTrI 左叵j SS

.3(⅛530⅛34T9⅛T

4

1

∙2⅜⅛

H -

Pr

<∙a φSUb COmmanCH

IC=Cko b

H V a -

(

⊃P U 65O ⅜⅛

鸯>|薄斗厲達 X o =)

) ep

H V a -(-n p u 650x (⅛⅛

J > 沛w ⅛l ⅛ ep)) 70

Whi

_e f H 0

XIHXOl(XO > 2 1 b)

二2 * b)

-f

Abs(x-k — Xo) Λ

①匸 Then PlinfXI

f

E-Se

XOHXl

End

_f

VVend

End

SUb

1.3弦截法

程序代码:

PriVate Sub Comma nd1_Click()

x0 = Val(InputBox("请输入第一个初始值 x0"))

X1 = Val(InputBox("请输入第二个初始值x1"))

ep = Val(InputBox("请输入误差限 ep")) f = 0

While f = 0

X2 = X1 - (X1 ^ 8 - 13) * (X1 - x0) / ((X1 ^ 8 - 13) - (x0 ^ 8 - 13))

If AbS(X2 - X1) V ep Then

Print X2

f = 1

Else

x0 = X1

X1 = X2

End If

Wend

End SUb

例:求f(x)=x8-13 的正根(初始值X仁

1,x2=10,ep=101°)

1.4二分法

程序代码:

PriVate Sub Comma nd1_Click()

a = Val(InputBox("请输入区间端点a"))

b = Val(InputBox("请输入区间端点b")) ep = Val(InputBox("请输入误差限 ep")) f = 0

While f = 0

X = (a + b) / 2

fx = Exp(-x / 7) * (9 - 2 * x) - 8

fa = Exp(-a / 7) * (9 - 2 * a) - 8

If fx = 0 The n

f = 1

Print "方程的根是",X

Else

If fa * fx > 0 The n

a = X

Else

b = X

End If

If Abs(b - a) V ep The n

X = (b + a) / 2

f = 1

Print "方程的根是",X

End If

End If

Wend

End SUb

例:求方程f (X)=r x(9-2x)-8在区间[0,1]内的实根。

-10 \ (ep=10 )

J

ιπ∣p ∣

t 方程的根是.31555613OS24961

『Ξ⅛⅛—ii

i Ck

第二章插值

2.1线性插值

程序代码:

PriVate Sub Comma nd1_Click()

XO = Val(InputBox("请输入第一个结点 X:")) Yo =

Val(InputBox("请输入第一个结点丫:"))

X1 = Val(InputBox("请输入第二个结点 X:")) Y1 =

Val(InputBox("请输入第二个结点丫:")) f = 0

While f = 0

X = Val(I nputBox("请输入未知点的自变量值 X:")) LO = (X - X1) / (X0 - X1)

L1 = (X - X0) / (X1 - X0)

y = L0 * Y0 + L1 * Y1

Prin t "x="; x, "y="; y

f = Val(InputBox("是否继续(0/1):"))

Wend

End SUb

例:已知两点(13 , 1)、(49,8),求30处的值

相关文档
最新文档