非线性方程求解实验报告.docx
- 文档编号:12202505
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:18
- 大小:98.41KB
非线性方程求解实验报告.docx
《非线性方程求解实验报告.docx》由会员分享,可在线阅读,更多相关《非线性方程求解实验报告.docx(18页珍藏版)》请在冰豆网上搜索。
非线性方程求解实验报告
数学实验报告
非线性方程求解
一、实验目的
1.掌握用MATLAB软件求解非线性方程和方程组的基本用法,并对结果作初步分析;
2.练习用非线性方程和方程组建立实际问题的模型并进行求解。
二、实验内容
题目1
【问题描述】
(Q1)小张夫妇以按揭方式贷款买了1套价值20万元的房子,首付了5万元,每月还款1000元,15年还清。
问贷款利率是多少?
(Q2)某人欲贷款50万元购房,他咨询了两家银行,第一家银行开出的条件是每月还4500元,15年还清;第二家银行开出的条件是每年还45000元,20年还清。
从利率方面看,哪家银行较优惠(简单假设:
年利率=月利率×12)?
【分析与解】
假设初始贷款金额为x0,贷款利率为p,每月还款金额为x,第i个月还完当月贷款后所欠银行的金额为xi,(i=1,2,3,......,n)。
由题意可知:
……
因而有:
则可以根据上述方程描述的函数关系求解相应的变量。
(Q1)
根据公式
(1),可以得到以下方程:
设,通过计算机程序绘制f(p)的图像以判断解p的大致区间,在Matlab中编程如下:
fori=1:
25
t=0.0001*i;
p(i)=t;
f(i)=150*t*(1+t).^180-(1+t).^180+1;
end;
plot(p,f),holdon,gridon;
运行以上代码得到如下图像:
f(p)~p关系曲线图
通过观察上图可知。
Solution1:
对于,采用二分法求解,在Matlab中编程如下:
clear;
clc;
x0=150000;
n=180;
x=1000;
p0=0.002;
p1=0.0022;
while(abs(p1-p0)>1e-8)
f0=x0*(1+p0).^n+x*(1-(1+p0).^n)/p0;
f1=x0*(1+p1).^n+x*(1-(1+p1).^n)/p1;
p2=(p0+p1)/2;
f2=x0*(1+p2).^n+x*(1-(1+p2).^n)/p2;
if(f0*f2>0&&f1*f2<0)
p0=p2;
else
p1=p2;
end;
end;
p0
结果得到p0=0.00208116455078125=0.2081%.
所以贷款利率是0.2081%。
Solution2:
对于,采用牛顿法求解,为观测p{k}是否收敛,在Matlab中编程如下:
clear
clc
n=5;
fori=1:
n
p(i)=0.0001*(i+18);
t=p(i);
f(i)=t-(150*t*(1+t).^180-(1+t).^180+1)/(27000*t*(1+t).^179+150*(1+t).^180-180*(1+t).^179);
g(i)=t;
end;
plot(p,f,p,g),holdon,gridon;
运行以上代码得到如下图像:
由图像可知蓝色曲线在两线交点处斜率绝对值小于1,故p{k}收敛。
取初始值,采用牛顿法求解,在Matlab中编程如下:
p=0.0019;
fori=1:
100
a=p-(150*p*(1+p).^180-(1+p).^180+1)/(27000*p*(1+p).^179+150*(1+p).^180-180*(1+p).^179);
p=a;
end
p
结果得到p0=0.00208116388945915=0.2081%.
所以贷款利率是0.2081%。
Solution3:
采用fzero求解,在Matlab中编程如下:
p=fzero(inline('150*x*(1+x).^180+1-(1+x).^180'),[0.00200,0.00225]);
结果得到p0=0.00208116388945920=0.2081%.
所以贷款利率是0.2081%。
【结论】贷款利率是0.2081%。
(Q2)
根据公式
(1),对于第一家银行提供的条件可以得到关于月利率p1的方程:
对于第二家银行提供的条件可以得到关于年利率p2的方程:
设,。
通过计算机程序绘制f(p1)和f(p2)的图像以判断解p1和p2的大致区间,在Matlab中编程如下:
clear
clc
fori=1:
100
p(i)=0.0001*i;
t=p(i);
f1(i)=1000*t*(1+t).^180-9*(1+t).^180+9;
end;
plot(p,f1),holdon,gridon;
fori=1:
1000
p(i)=0.0001*i;
t=p(i);
f2(i)=100*t*(1+t).^20-9*(1+t).^20+9;
end;
plot(p,f2),holdon,gridon;
运行以上代码得到如下图像:
f(p1)~p1关系曲线图
f(p2)~p2关系曲线图
通过观察以上图像可知,
Solution1:
采用二分法求解相应的利率值,在Matlab中编程如下:
clear
clc
p10=0.0055;
p11=0.0060;
while(abs(p10-p11)>1e-8)
f0=1000*p10*(1+p10).^180-9*(1+p10).^180+9;
f1=1000*p11*(1+p11).^180-9*(1+p11).^180+9;
p22=(p10+p11)/2;
f2=1000*p22*(1+p22).^180-9*(1+p22).^180+9;
if(f0*f2>0&&f1*f2<0)
p10=p22;
else
p11=p22;
end;
end;
p10
clear
clc
p20=0.060;
p21=0.065;
while(abs(p20-p21)>1e-8)
f0=100*p20*(1+p20).^20-9*(1+p20).^20+9;
f1=100*p21*(1+p21).^20-9*(1+p21).^20+9;
p22=(p20+p21)/2;
f2=100*p22*(1+p22).^20-9*(1+p22).^20+9;
if(f0*f2>0&&f1*f2<0)
p20=p22;
else
p21=p22;
end;
end;
p20
结果得到p1=0.00585079193115234=0.5851%,相应的年利率为p1n=12*p1=7.021%;p2=0.0639487743377685=6.395%。
所以第一家银行的贷款年利率是7.021%,第二家银行的贷款年利率是6.395%。
Solution2:
采用牛顿法求解相应的利率值,为观察p1{k}和p2{k}是否收敛,在Matlab中编程如下:
clear
clc
n=6;
fori=1:
n
p(i)=0.0001*(i+55);
t=p(i);
f1(i)=t-(1000*t*(1+t).^180-9*(1+t).^180+9)/(180000*t*(1+t).^179+1000*(1+t).^180-1620*(1+t).^179);
g(i)=t;
end;
plot(p,f1,p,g),holdon,gridon;
clear
clc
n=10;
fori=1:
n
p(i)=0.001*(i+60);
t=p(i);
f2(i)=t-(100*t*(1+t).^20-9*(1+t).^20+9)/(2000*t*(1+t).^19+100*(1+t).^20-180*(1+t).^19);
g(i)=t;
end;
plot(p,f2,p,g),holdon,gridon;
运行以上代码得到如下图像:
由图像可知两条蓝色曲线在两线交点处斜率绝对值均小于1,故p1{k}和p2{k}均收敛。
对于p1{k},取初始值,对于p2{k},取初始值,采用牛顿法求解,在Matlab中编程如下:
clear
clc
p=0.0056;
fori=1:
100
t=p;
pp=t-(1000*t*(1+t).^180-9*(1+t).^180+9)/(180000*t*(1+t).^179+1000*(1+t).^180-1620*(1+t).^179);
p=pp;
end
p
clear
clc
p=0.061;
fori=1:
100
t=p;
pp=t-(100*t*(1+t).^20-9*(1+t).^20+9)/(2000*t*(1+t).^19+100*(1+t).^20-180*(1+t).^19);
p=pp;
end
p
结果得到p1=0.00585079258284539=0.5851%,相应的年利率为p1n=12*p1=7.021%;p2=0.0639487770923863=6.395%。
所以第一家银行的贷款年利率是7.021%,第二家银行的贷款年利率是6.395%。
Solution3:
采用fzero求解,在Matlab中编程如下:
clear
clc
p1=fzero(inline('1000*x*(1+x).^180+9-9*(1+x).^180'),[0.0056,0.0066]);
p2=fzero(inline('100*x*(1+x).^20+9-9*(1+x).^20'),[0.061,0.071]);
p1
p2
结果得到p1=0.00585079258284532=0.5851%,相应的年利率为p1n=12*p1=7.021%;p2=0.0639487770923863=6.395%。
所以第一家银行的贷款年利率是7.021%,第二家银行的贷款年利率是6.395%。
【结论】由于第一家银行的贷款年利率是7.021%,第二家银行的贷款年利率是6.395%,所以第二家银行较优惠。
题目2
【问题描述】
由汽缸控制关闭的门,关闭状态的示意图如左图。
门宽a,门枢在H处,与H相距b处有一门销,通过活塞与圆柱形汽缸相连,活塞半径为r,汽缸长l0,汽缸内气体的压强为p0。
当用力F推门,使门打开一个角度α时,活塞下降的距离为c,门销与H的水平距离b保持不变,于是汽缸内气体被压缩,对活塞的压强增加。
已知在绝热条件下,气体的压强p与体积V满足:
pVγ=c,其中γ是绝热系数,c是常数。
试利用开门力矩和作用在活塞上的力矩相平衡的关系(对门枢而言),求在一定的力F的作用下,门打开的角度α。
(参数设置:
a=0.8m,b=0.25m,r=0.04m,l0=0.5m,p0=104N/m2,γ=1.4,F=25N。
)
α
c
F
b
a
a
b
F
r
l0
l
P0
P0
图1门的关闭状态图2门的关闭状态
【分析与解】
由题意,根据力矩的平衡关系,有:
将相应数据带入以上方程组得到:
其中P和c是未知量。
Solution:
用牛顿法求解,则原方程组可以表示为如下形式:
为使用牛顿迭代法,在Matlab中编程如下:
clear
clc
p0=10000;
c0=0.1;
p
(1)=p0;
c
(1)=c0;
fori=1:
100
A=[3.14159*(0.0625+(c(i)).^2).^0.5,p(i)*c(i)*3.14159*(0.0625+(c(i)).^2).^(-0.5);
(0.5-c(i)).^1.4,-1.4*p(i)*(0.5-c(i)).^0.4];
b=[-p(i)*3.14159*(0.0625+(c(i)).^2).^0.5+12500;
-p(i)*(0.5-c(i)).^1.4+10000*(0.5).^1.4];
t=A\b;
p(i+1)=p(i)+t
(1);
c(i+1)=c(i)+t
(2);
end
c=c(101);
a=atan(4*c)*180/3.14159
结果得到24.8060101524433。
由于该题目是实际物理应用问题,故只有唯一实解,而解α显然符合实际情况,所以该解是正确的。
【结论】门打开的角度α为24.81°
题目3
【问题描述】
用迭代公式计算序列{xk},分析其收敛性,其中a分别取5,11,15;b(>0)任意,初值x0=1。
观察是否有混沌现象出现,并找出前几个分岔点,观察分岔点的极限趋势是否符合Feigenbaum常数揭示的规律。
【分析与解】
为观测{xk}随迭代次数变化的情况,在Matlab中编程如下:
functionx=iter(a,b)
x0=1;
x
(1)=a*x0*exp(-b*x0);
fori=1:
49
x(i+1)=a*x(i)*exp(-b*x(i));
end
x=x';
取b=1,计算相应的xk随迭代次数变化的情况,在Matlab中编程如下:
clear
clc
x1=iter(5,1)
x2=iter(11,1)
x3=iter(15,1)
运行以上代码得到如下结果:
迭代次数k
xk(a=5)
xk(a=11)
xk(a=15)
1
1.8394
4.0467
5.5182
2
1.4615
0.7781
0.3322
3
1.6945
3.931
3.5743
4
1.5563
0.8486
1.503
5
1.6412
3.9953
5.0153
6
1.5899
0.8087
0.4992
7
1.6213
3.9625
4.5452
8
1.6022
0.8288
0.7239
9
1.6138
3.9802
5.2648
10
1.6067
0.8179
0.4083
11
1.6111
3.9709
4.0715
12
1.6084
0.8237
1.0414
13
1.61
3.9758
5.5136
14
1.6091
0.8206
0.3334
15
1.6097
3.9732
3.5833
16
1.6093
0.8222
1.4933
17
1.6095
3.9746
5.0316
18
1.6094
0.8214
0.4927
19
1.6095
3.9739
4.5156
20
1.6094
0.8218
0.7408
21
1.6094
3.9743
5.2975
22
1.6094
0.8216
0.3976
23
1.6094
3.9741
4.0076
24
1.6094
0.8217
1.0927
25
1.6094
3.9742
5.4959
26
1.6094
0.8216
0.3383
27
1.6094
3.9741
3.6179
28
1.6094
0.8217
1.4565
29
1.6094
3.9741
5.0916
30
1.6094
0.8217
0.4696
31
1.6094
3.9741
4.404
32
1.6094
0.8217
0.8078
33
1.6094
3.9741
5.4022
34
1.6094
0.8217
0.3652
35
1.6094
3.9741
3.802
36
1.6094
0.8217
1.2733
37
1.6094
3.9741
5.3461
38
1.6094
0.8217
0.3822
39
1.6094
3.9741
3.9122
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 非线性 方程 求解 实验 报告