MATALAB基础知识微分方程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五
1、求下列微分方程的解析解。
xy y dx
dy x -=2
(1)、dsolve('Dy=(y-x*y)/(x^2)','x') ans = C1/exp(1/x)/x
(2)、[x,y,z]=dsolve('Dx=2*x-3*y+3*z','Dy=4*x-5*y+3*z','Dz=4*x-4*y+2*z','t') x =
C1*exp(-t)+C3*exp(2*t) y =
C1*exp(-t)+C2*exp(-2*t)+C3*exp(2*t) z =
C2*exp(-2*t)+C3*exp(2*t)
2、求微分方程
2)0(,1)0(,2'
'''-==+=+-x x t e x x t 的数值解。 y1=x,y2=y1’
1'22'221(0)1,2(0)2t
y y y e t y y y -=⎧
⎪=+-⎨⎪==-⎩
先建立M 文件:
function f=cxd(t,y)
f=[y(2);2*exp(-t)+t-y(2)]
在输入指令:
[T,Y]=ode15s('cxd',[0,3000],[1,-2]);plot(T,Y(:,1),'-')
……
050010001500200025003000
00.511.522.533.544.5x 10
6
3、实验内容
狼追击兔子问题
狼追击兔子问题是欧洲文艺复兴时代的著名人物达.芬奇提出的一个数学问题。当一个兔子正在它的洞穴南面60码处觅食时,一只恶狼出现在兔子正东的100码处。当两只动物同时发现对方以后,兔子奔向自己的洞穴,狼以快于兔子一倍的速度紧追兔子不放。狼在追赶过程中所形成的轨迹就是追击曲线。狼是否会在兔子跑回洞穴之前追赶上兔子? 实验要求: 1.写出数学模型;
2.利用ode45命令求出微分方程数值解;
>> tspan=100:-0.1:0.1;
y0=[0 0];
[T,Y] = ode45('fun',tspan,y0);
n=size(Y,1);
disp('狼的坐标(x=0.1)')
disp(Y(n,1))
狼的坐标(x=0.1)
63.5007
3.进行结果分析。
通过上面运行结果可知,狼并没有追上兔子。
4、某人从银行贷款购房,若他今年初贷款10万元,月利率0.5%,每月还1000元,建立差分方程计算他每年末欠银行多少钱,多少时间才能还清?如果要10年还清,每月需还多少?
function x=exf11(x0,n,r,b)
a=1+r;
x=x0;
for k=1:n
x(k+1)=a*x(k)+b;
end
k=(1:140);
y=exf11(100000,140,.0005,-1000)
x0=100000;
r=0.005;
n=120;
b=-r*x0*(1+r).^n/[1-(1+r).^n]
y =
1.0e+005 *
Columns 1 through 11
1.0000 0.9905 0.9810 0.9715 0.9620 0.9525 0.9429 0.9334 0.9239 0.9143 0.9048
Columns 12 through 22
0.8952 0.8857 0.8761 0.8666 0.8570 0.8474 0.8379 0.8283 0.8187 0.8091 0.7995
Columns 23 through 33
0.7899 0.7803 0.7707 0.7611 0.7515 0.7418 0.7322 0.7226 0.7129 0.7033 0.6936
Columns 34 through 44
0.6840 0.6743 0.6647 0.6550 0.6453 0.6356 0.6260 0.6163 0.6066 0.5969 0.5872
Columns 45 through 55
0.5775 0.5678 0.5580 0.5483 0.5386 0.5289 0.5191 0.5094 0.4996 0.4899 0.4801
Columns 56 through 66
0.4704 0.4606 0.4508 0.4411 0.4313 0.4215 0.4117 0.4019 0.3921 0.3823 0.3725
Columns 67 through 77
0.3627 0.3529 0.3431 0.3332 0.3234 0.3136 0.3037 0.2939 0.2840 0.2742 0.2643
Columns 78 through 88
0.2544 0.2446 0.2347 0.2248 0.2149 0.2050 0.1951 0.1852 0.1753 0.1654 0.1555
Columns 89 through 99
0.1456 0.1356 0.1257 0.1158 0.1058 0.0959 0.0859 0.0760 0.0660 0.0560 0.0461
Columns 100 through 110
0.0361 0.0261 0.0161 0.0061 -0.0039 -0.0139 -0.0239 -0.0339 -0.0439 -0.0539 -0.0640
Columns 111 through 121
-0.0740 -0.0840 -0.0941 -0.1041 -0.1142 -0.1242 -0.1343 -0.1444 -0.1544 -0.1645 -0.1746
Columns 122 through 132
-0.1847 -0.1948 -0.2049 -0.2150 -0.2251 -0.2352 -0.2453 -0.2554 -0.2656 -0.2757 -0.2858
Columns 133 through 141
-0.2960 -0.3061 -0.3163 -0.3264 -0.3366 -0.3468 -0.3569 -0.3671 -0.3773 b =
1.1102e+003
5、试用不同的算法计算定积分dx x x )1(1
02⎰+的数值解。 梯形积分法:x=0:1;y=x.*(1+x.^2);trapz(x,y)
ans = 1
变步长辛普生法: z=quad('x.*(1+x.^2)',0,1) z =0.7500