北航数值分析大作业三
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、题目:
关于x, y, t, u, v, w 的下列方程组
0.5cos 2.670.5sin 1.070.5cos 3.740.5sin 0.79
t u v w x t u v w y t u v w x t u v w y +++-=⎧⎪+++-=⎪
⎨
+++-=⎪⎪+++-=⎩
1、试用数值方法求出f(x, y)在区域 {(,)|00.8,0.5 1.5}D x y x y =≤≤≤≤上的一个近似表达式
,0
(,)k
r s rs
r s p x y c
x y ==
∑
要求(,)p x y 一最小的k 值达到以下的精度
1020
2700
((,)(,))10i j i j i j f x y p x y σ-===-≤∑∑
其中,0.08,0.50.05i j x i y j ==+。
2、计算****
(,),(,)i j i j f x y p x y (i = 1, 2, …,8;j = 1, 2,…,5)的值,以观察(,)p x y 逼近(,)f x y 的效果,其中,*
i x =0.1i , *
j y =0.5+0.2j 。
说明:1、用迭代方法求解非线性方程组时,要求近似解向量()k x 满足
()(1)()12||||/||||10k k k x x x --∞∞-≤
2、作二元插值时,要使用分片二次代数插值。
3、要由程序自动确定最小的k 值。
4、打印以下内容:
●算法的设计方案。
●全部源程序(要求注明主程序和每个子程序的功能)。
●数表:,,i j x y (,)i j f x y (i = 0,1,2,…,10;j = 0,1,2,…,20)。 ●选择过程的,k σ值。
●达到精度要求时的,k σ值以及(,)p x y 中的系数rs c (r = 0,1,…,k;s = 0,1,…,k )。
●数表:**,,i j x y ****
(,),(,)i j i j f x y p x y (i = 1, 2, ...,8;j = 1, 2, (5)
。 5、采用f 型输出,,i j x y **,i j x y 的准确值,其余实型数采用e 型输出并且至少显示12位有效数字。
二、算法设计方案
1.使用牛顿迭代法,对原题中给出的i x i 08.0=,j y j 05.05.0+=,(010,020i j ≤
≤≤≤)的11*21组j i y x ,分别求出原题中方程组的一组解,于是得
到一组和i i y x ,对应的j i t u ,。
2.对于已求出的j i t u ,,使用分片二次代数插值法对原题中关于u t z ,,的数表进行插值得到
ij z 。于是产生了z=f(x,y)的11*21个数值解。
3.从k=1开始逐渐增大k 的值,并使用最小二乘法曲面拟合法对z=f(x,y)进行拟合,得到每次的σ,k 。当7
10-<σ时结束计算,输出拟合结果。
4.计算)5,,2,1,8,,2,1)(,(),,(*
***⋅⋅⋅=⋅⋅⋅=j i y x p y x f j i j i 的值并输出结果,以观察),(y x p 逼近),(y x f 的效果。其中j y i x j i 2.05.0,1.0*
*
+==。 三、算法实现方案 1、求(,)f x y :
(1)Newton 法解非线性方程组
0.5cos 2.670.5sin 1.07(1)0.5cos 3.740.5sin 0.79
t u v w x t u v w y t u v w x t u v w y +++-=⎧⎪+++-=⎪
⎨
+++-=⎪⎪+++-=⎩, 其中,t, u, v ,w 为待求的未知量,x, y 为代入的已知量。
设(,,,)T
t u v w ξ=,给定精度水平12110ε-=和最大迭代次数M ,则解该线性方程组的
迭代格式为:
*(0)(0)(0)(0)(0)(k+1)
()()1()(,,,)()()0,1,T k k k t u v w F F k ξξξ
ξξξ-⎧=⎪'=-⎨⎪=
⎩
在附近选取初值, 迭代终止条件为()(1)()
1/k k k ξξξε-∞
∞
-≤,若k M >时仍未达到迭代精度,则迭代计算失
败。
其中,雅可比矩阵
0.5*cos(t) + u + v + w - x - 2.67t + 0.5*sin(u) + v + w - y - 1.07()0.5*t + u + cos(v) + w - x - 3.74t + 0.5*u + v + sin(w) - y - 0.79F ξ⎡⎤⎢⎥
⎢
⎥=⎢⎥⎢⎥⎣⎦
, 0.5*sin()11110.5*cos()11()0.51sin()110.51cos()t u F v w ξ-⎡⎤⎢⎥⎢⎥'=⎢⎥-⎢⎥
⎣
⎦, (2)分片双二次插值:
根据题目给出的表格,
(0,1,,5)(0,1,
,5)
i i t ih i u j j τ= == =(其中,0.2h τ= =0.4,)
对于给定的(,)t u ,如果(,)t u 满足
,322
,322
i i j j h h
t t t i u u u j τ
τ
-
<≤+ 2≤≤-
<≤+ 2≤≤
则选择(,)(1,,1;1,,1)k r t u k i i i r j j j =-+=-+为插值节点,相应的插值多项式为
1
111
(,)()()(,)j i k
r
k
r
k i r j h t u l t l u g t u ++=-=-=
(2) ∑∑
其中,
1
11
1()(1,,1)()(1,,1)i m
k m i k m
m k
j n
r n j r n
n r
t t l t k i i i t t u u l u r j j j u u +=-≠+=-≠-= =-+--=
=-+-∏∏
如果1422h h t t t t ≤+
>+或,则在式(2)中取i=1或i=4; 如果1422
u u u ττ
≤+>+或u ,