MATLAB数学实验报告.docx
- 文档编号:29347161
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:14
- 大小:103.98KB
MATLAB数学实验报告.docx
《MATLAB数学实验报告.docx》由会员分享,可在线阅读,更多相关《MATLAB数学实验报告.docx(14页珍藏版)》请在冰豆网上搜索。
MATLAB数学实验报告
Matlab数学实验报告
一、实验目的
通过以下四组实验,熟悉MATLAB的编程技巧,学会运用MATLAB的一些主要功能、命令,通过建立数学模型解决理论或实际问题。
了解诸如分岔、混沌等概念、学会建立Malthu模型和Logistic模型、懂得最小二乘法、线性规划等基本思想。
二、实验内容
2.1实验题目一
2.1.1实验问题
Feigenbaum曾对超越函数y=λsin(πx)(λ为非负实数)进行了分岔与混沌的研究,试进行迭代格式xk+1=λsin(πxk),做出相应的Feigenbaum图
2.1.2程序设计
clear;clf;
axis([0,4,0,4]);
holdon
forr=0:
0.3:
3.9
x=[0.1];
fori=2:
150
x(i)=r*sin(3.14*x(i-1));
end
pause(0.5)
fori=101:
150
plot(r,x(i),'k.');
end
text(r-0.1,max(x(101:
150))+0.05,['\it{r}=',num2str(r)])
end
加密迭代后
clear;clf;
axis([0,4,0,4]);
holdon
forr=0:
0.005:
3.9
x=[0.1];
fori=2:
150
x(i)=r*sin(3.14*x(i-1));
end
pause(0.1)
fori=101:
150
plot(r,x(i),'k.');
end
end
运行后得到Feigenbaum图
2.2实验题目二
2.2.1实验问题
某农夫有一个半径10米的圆形牛栏,长满了草。
他要将一头牛拴在牛栏边界的桩栏上,但只让牛吃到一半草,问拴牛鼻子的绳子应为多长?
2.2.2问题分析
如图所示,E为圆ABD的圆心,AB为拴牛的绳子,圆ABD为草场,区域ABCD为牛能到达的区域。
问题要求区域ABCD等于圆ABC的一半,可以设BC等于x,只要求出∠a和∠b就能求出所求面积。
先计算扇形ABCD的面积,2a÷π×πx2=2aπ2,再求AB的面积,用扇形ABE的面积减去三角形ABE的面积即可。
2.2.3程序设计
f=inline('acos(x/20)*x^2+100*pi-200*acos(x/20)-x*sqrt(100-(x^2)/4)-50*pi');
a=0;
b=20;
dlt=1.0*10^-3;
k=1;
whileabs(b-a)>dlt
c=(a+b)/2;
iff(c)==0
break;
elseiff(c)*f(b)<0
a=c;
else
b=c;
end
fprintf('k=%d,x=%.5f\n',k,c);
k=k+1;
end
2.2.4问题求解与结论
k=6,x=11.56250
k=7,x=11.71875
k=8,x=11.64063
k=9,x=11.60156
k=10,x=11.58203
k=11,x=11.59180
k=12,x=11.58691
k=13,x=11.58936
k=14,x=11.58813
k=15,x=11.58752
结果表明,要想牛只吃到一半的草,拴牛的绳子应该为11.6米。
2.3实验题目三
2.3.1实验问题
饲养厂饲养动物出售,设每头动物每天至少需要700g蛋白质、30g矿物质、100mg维生素。
现有5种饲料可供选用,每种饲料每千克所含营养成分含量及单价如下表。
试确定既能满足动物生长的营养需要,又可使费用最省的选用饲料的方案。
饲料
蛋白质(g)
矿物质(g)
维生素(mg)
价格{元/千克}
A1
3
1
0.5
0.2
A2
2
0.5
1
0.7
A3
1
0.2
0.2
0.4
A4
6
2
2
0.3
A5
18
0.5
0.8
0.8
五种饲料单位质量(1kg)所含营养成分
2.3.2问题分析与模型建立
设Xj(j=1,2,3,4,5)表示饲料中所含的第j种饲料的数量。
由于提供的蛋白质总量必须每天满足最低要求70g,故应有
3X1+2X2+1X3+6X4+18X5≥700
同理,考虑矿物质和维生素的需求。
应有
1X1+0.5X2+0.2X3+2X4+0.5X5≥30
0.5X1+1X2+0.2X3+2X4+0.8X5≥100
希望调配出来的混合饲料成本最低,故目标函数f为
f=0.2X1+0.7X2+0.4X3+0.3X4+0.8X5
当来对决策量Xj的要求应为非负。
所以该饲料配比问题是一个线性规划模型
Minf=0.2X1+0.7X2+0.4X3+0.3X4+0.8X5
3X1+2X2+1X3+6X4+18X5≥700
1X1+0.5X2+0.2X3+2X4+0.5X5≥30
0.5X1+1X2+0.2X3+2X4+0.8X5≥100
Xj≥0,j=1,2,3,4,5
2.3.3模型评述
一般的食谱问题可叙述为:
设有n种食物,每种食物中含有m种营养成分。
用ija表示一个单位的第j种食物中含有第i种营养的数量,用ib表示每人每天对第i种营养的最低需求量,jc表示第j种食品的单价,jx表示所用的第j种食品的数量,一方面满足m种营养成分的需要同时使事物的总成本最低。
一般的食谱问题的线性规划模型为
这类线性规划模型还可以描述很多诸如合理下料、最小成本运输、合分派任务等问题,具有很强的代表性。
2.3.4模型计算
将该问题化成Matlab中线性规划问题的标准形式Minf=0.2X1+0.7X2+0.4X3+0.3X4+0.8X5
-3X1-2X2-1X3-6X4-18X5≤-700
-1X1-0.5X2-0.2X3-2X4-0.5X5≤-30
-0.5X1-1X-0.2X3-2X4-0/;.8X5≤-100
Xj≥0,j=1,2,3,4,5
由MATLAB软件的编辑器构作m文件LF如下:
c=[0.2,0.7,0.4,0.3,0.8];
a=[-3,-2,-1,-6,-18;-1,-0.5,-0.2,-2,-0.5;-0.5,-1,-0.2,-2,-0.8];
b=[-700,-30,-100];
lb=[00000];
ub=[];
aeq=[];
beq=[];
[x,fval]=linprog(c,a,b,aeq,beq,lb,ub)
在MATLAB命令窗口键入LF,回车,计算结果显示如下
x=0.0000
0.0000
0.0000
39.7436
25.6410
fval=
32.4359
其结果显示x1=0x2=0x3=0x4=39.7436x5=25.6410,则表示该公司分别购买第四种第五种饲料39.7436(kg),25.6410(kg)配成混合饲料;所耗成本32.4359(元)为满足营养条件下的最低成本。
2.3.5模型思考:
线性规划的本质特点
一.目标函数是决策变量的线性函数
二.约束条件是决策变量的线性等式或不等式,它是一种较为简单而又特殊的约束极值问题。
三.能转化为线性规划问题的实例很多如:
生产决策问题,一般性的投资问题,地址的选择,运输问题等等。
2.4实验题目四
2.4.1实验题目描述
1790年到1980年各年美国人口数的统计数据如下表:
年份
1790
1800
1810
1820
1830
1840
1850
1860
1870
1880
统计
3.9
5.3
7.2
9.6
12.9
17.1
23.2
31.4
38.6
50.2
年份
1890
1900
1910
1920
1930
1940
1950
1960
1970
1980
统计
62.0
72.0
92.0
106.5
123.2
131.7
150.7
179.3
204.0
226.5
试根据以上数据,
(1)分别用Malthu模型和Logistic模型建立美国人口增长的近似曲线(设美国人口总体容纳量为3.5亿);
(2)预测2000年,2005年,2010年,2015年,2020年人口数;
(3)对两种预测结果进行比较.
2.4.2问题的分析
2.4.2.1Malthu模型
1798年,Malthus提出对生物繁殖规律的看法。
他认为,一种群中个体数量的增长率与该时刻种群的的个体数量成正比。
设x(t)表示该种群在t时刻个体的数量,则其增长率(dx/dt)=rx(t),或相对增长率1/x*dx/dt=r.其中常数r=B-D,B和D分别为该种群个体的平均生育率与死亡率。
2.4.2.2Logistic模型
1838年,Verhulst指出上述模型未考虑“密度制约”因素。
种群生活在一定的环境中,在资源给定的情况下,个体数目越多,个体所获资源就越少,这将抑制其生长率,增加死亡率。
所以相对增长率1/x*(dx/dt)不应为一常数r,而应是r乘上一个“密度制约”因子。
此因子随x单调减小,设其为(1-x/k),其中k为环境容纳量。
于是Verhulst提出Logistic模型:
dx/dt=rx(1-x/k)。
2.4.3实验设计的流程
2.4.3.1Malthu模型源代码
clear;clf
x=10:
10:
200;
y=[3.95.37.29.612.917.123.231.438.650.262.072.092.0106.5123.2131.7150.7179.3204.0226.5];
plot(x+1780,'k-','markersize',20);
axis([1780,2020,3,800]);
grid;holdon
n=20;
a=sum(x(1:
n));
b=sum(x(1:
n).*x(1:
n));
c=sum(log(y(1:
n)));
d=sum(log(y(1:
n)).*x(1:
n));
A=[na;ab];
B=[c;d];
P=inv(A)*B;
t=10:
10:
800;
f=exp(P
(1)+P
(2)*t);
plot(t+1780,f,'ro-','linewidth',2);
k=[20002005201020152020];
f=exp(P
(1)+P
(2)*(k-1780));
fprintf('f=%.1f',f);
2.4.3.2Logistic模型程序源代码
clc;clear;
x=9:
28;
y=[3.95.37.29.612.917.123.231.438.650.262.072.092.0106.5123.2131.7150.7179.3204.0226.5];
plot(x*10+1700,y,'k.','markersize',15);
grid;
holdon;
axis([179020150400]);
m=1000*y./(1000-y);
a1=sum(x);
a2=sum(x.^2);
a3=sum(log(m));
a4=sum(x.*log(m));
A=[20,a1;a1,a2];
B=[a3;a4];
p=inv(A)*B;
t=9:
0.1:
55;
s=1./(0.001+exp(-p
(1)-p
(2)*t));
plot(t*10+1700,s,'r-');
k=[3030.53131.532];
l=[k*10+1700;1./(0.001+exp(-p
(1)-p
(2)*k))];
2.4.4上机实验结果的分析与结论
Malthus模型结果
Logistic模型结果
对比预测结果与实际数据,可看出Logistic模型更符合自然规律。
三、实验小结与体会
通过以上四组数学实验、我们熟悉了解了许多MATLAB的方法及理论、并尝试了将其运用到了实际问题中去,解决实际问题。
比如,在实验一中,了解了方程的迭代以及分岔、混沌的概念;实验二中通过简单的MATLAB程序解决数学问题;实验三中尝试通过线性规划建立数学模型,从而解决生产生活中的实际问题,了解了最大最小化问题的求解及其MATLAB指令;实验四中通过人口预测问题的分析求解,了解运用最小二乘法进行数据拟合的基本思想,掌握了建立人口增长数学模型的思想方法,学会建立Malthu模型和Logistic模型。
此外,通过这几次数学实验,就个人而言,不仅思维得到了锻炼、提升,而且让我们感觉到数学的乐趣。
用MATLAB编出的程序不仅算得快,画出的图形、得出的结论也很有意思。
就团队而言,这门课程很讲究相互配合、团队合作,不仅让我们更有团队精神,更增进了友谊。
而且,通过实验不仅仅只是解决了几道题而已,更重要的是学习解决数学问题的思维方式。
最后,感谢老师开设这门课程,给了我们更多机会,让我们从中受益匪浅,收获良多。
谢谢老师的悉心教导。
00:
00ThomasBergersen-EmpireofAngels
04:
47SilverScreen-TheElysium
08:
30EpicScore-RidetoGlory
10:
35C21FX-AncientEvil
12:
55SubPubMusic-Fearless
14:
55PositionMusic-ResonanceTheory
17:
19VoltaMusic-Revolution
19:
50PostHasteMusic-FallenHeroes
22:
24MaxCameron-EscapeVelocity
25:
40KellyAndrew-ChasingGlory
28:
17PeterCrowley-TheEchoesOfWar
32:
52BrunuhVille-TheWolfandtheMoon
36:
44BrandXMusic-HelmettoHelmet
39:
16ImmediateMusic-ProtectorsOfTruth
44:
14ReallySlowMotion-HomecomingWarrior
46:
41Nightcall-DeadV
50:
06TwoStepsFromHell-Riders
53:
26EpicMusicVn-Starlight
56:
07GothicStormMusic-BeyondTheStars
58:
34MichaelConn-PitcairnStory
01:
01:
55Audiomachine-IceofPhoenix
01:
05:
20C21FX-Legacy
01:
08:
03SubPubMusic-FacetheWorld
01:
10:
15ArnAndersson-Immortality
01:
12:
17Audiomachine-Sura
01:
14:
22VoltaMusic-LunaRosa
01:
16:
28SimBiJ-Glory
01:
19:
00ReallySlowMotion-SunsAndStars
01:
21:
41PostHasteMusic-Talisman
01:
23:
46FutureWorldMusic-LargerThanLife
01:
26:
32IconAudio-Vanguard
01:
29:
15AtlasMusic-FrozenWarrior
01:
32:
16NinjaTracks-Republic
01:
36:
04AnttiMartikainen-TheKingOfTheHighlands
01:
43:
34JamesPaget-TheHeroWithin
01:
47:
43BrunuhVille-FieldsofElysium
01:
51:
09ThomasBergersen-ColorsofLove
01:
57:
22ChristianBaczyk-Arise(Ft.KashiaVu)
02:
00:
06ICONTrailerMusic-TheEyeoftheOracle
02:
02:
29J.TPeterson-Solaris(feat.JulieElven)
02:
05:
03IvanTorrent-Crystalline(Feat.CelicaSoldrea)
02:
09:
30switch.Music-Aeon(ft.JulietLyons)
02:
12:
02MarcusWarner(C21FX)-IfElephantsCouldFly
02:
16:
51BrandXMusic-Auryn
02:
19:
49SilverScreen-BeneathTheHorizon
02:
22:
40SergeySaliev-AngelsWatchOverUs
02:
24:
57MartinKirkhaug-FinalApproach
02:
29:
11TonyAnderson-TheImpossible
02:
32:
21EpicMusicVn-LastReunion
02:
36:
46IvanTorrent-InAeternum
02:
39:
21SergeySaliev-WhenTheSpringComes
02:
42:
45EpicMuscVn-LamentofValkyrie
02:
45:
45MichaelMaasft.FeliciaFarerre-MorpheusandtheDream
02:
48:
33C21FX-BloodRedRoses
02:
51:
56AleksandarDimitrijevic-IcarusRising
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 数学 实验 报告