利用MATLAB进行验证性实验1.划艇比赛的成绩2.机动车刹车距离生猪的出售时机模型求解

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

河北大学《数学模型》实验实验报告

班级专业15计科2班姓名张宇轩学号20151101006实验地点C1-229指导老师司建辉成绩

实验项目利用MATLAB进行验证性实验

1.划艇比赛的成绩

2.汽车刹车距离

3.生猪的出售时机模型求解

一、实验目的

学会利用MATLAB进行验证性实验,熟练掌握用数据拟合求解模型和参数。了解并使用最小二乘多项式拟合函数polyfit,仿照案例今后能够自己解决图形问题。

二、实验要求

1.划艇比赛的成绩的模型:t=αnβ

其中,t为比赛成绩(时间),n为桨手人数,α和β为参数。

为适合数据拟合,将模型改为:log t=log α+βlog

桨手人数n 比赛平均成绩t

1 7.17

2 6.88

4 6.32

8 5.84

1>. 参数α和β估计

程序如下:

clear;clc;

n=[1 2 4 8];

t=[ 7.21 6.88 6.32 5.84];

logt=log(t);logn=log(n);

p=polyfit(logn,logt,1);

beta=p(1)

alfa=exp(p(2))

2>. 实际值与计算值比较(数据比较和和拟合图形)

参考数据结果:

ans =

1 7.21 7.2842

2 6.88 6.7799

4 6.32 6.3106

8 5.84 5.8737

参考图形结果:

图1:题给拟合图形结果

要求:

1)运行以上程序。

2)编程:实际值与计算值比较(数据比较和和拟合图形)。

3)用help查询函数polyfit的用法。

2.汽车刹车距离的模型:d=t1v+kv2

其中,d为刹车距离,变量v为车速,参数t1为反应时间,参数k为比例系数。取经验值t1=0.75秒。

实际数据表

车速实际刹车距离

(英里/小时)(英尺/秒)(英尺)

20 29.3 44

30 44.0 78

40 58.7 124

50 73.3 186

60 88.0 268

70 102.7 372

80 117.3 506

①用数据拟合求参数k

为适合数据拟合,将模型改为:y=k

其中y=(d-0.75v)/v2

程序如下:

clear;clc;

v=[29.3 44.0 58.7 73.3 88.0 102.7 117.3]; %英尺/秒

d=[44 78 124 186 268 372 506]; %最大实际刹车距离(英尺)

y=(d-0.75*v)./v.^2;

k=polyfit(v,y,0)

②用所得模型计算刹车距离和刹车时间(数据比较)

程序如下:

clear;clc;

k= ; %输入上题所求得的结果

v=[29.3 44.0 58.7 73.3 88.0 102.7 117.3]; %英尺/秒

d=[44 78 124 186 268 372 506]; %最大实际刹车距离(英尺)

dd=0.75*v+k*v.^2; %计算刹车距离

t=d./v; %计算刹车时间

format short g;

[v',d',round(10*[dd',t'])/10]

③实际和计算刹车距离的比较(拟合图形)

程序如下:

clear;clc;

k= ; %输入题1所求得的结果

vh=[20 30 40 50 60 70 80]; %英里/小时

v=[29.3 44.0 58.7 73.3 88.0 102.7 117.3];% 英尺/秒

d=[44 78 124 186 268 372 506];% 最大实际刹车距离(英尺)

dd=0.75*v+k*v.^2; %计算刹车距离

plot(vh,d,'r+',vh,dd,'b-');

title('实际和计算刹车距离的比较');

axis([20,80,0,510]);

xlabel('v 英里/小时');

ylabel('d 英尺');

要求:

1)运行以上程序,结果与教材相应内容比较。

2)题2和题3中要求输入题1所求得的k值。

3)理解程序。

3.生猪的出售时机模型求解

目标函数(生猪出售纯利润,元):

Q(t)=(8-gt)(80+rt)-4t-640

其中,t≥0为第几天出售,g为每天价格降低值(常数,元/公斤),r为每天生猪体重增加值(常数,公斤)。

求t使Q(t)最大。

①图解法

绘制目标函数

Q(t)=(8-gt)(80+rt)-4t-640

的图形(0≤t≤20)。其中,g=0.1, r=2。

程序如下:

clear;clc;

g=0.1;r=2;

fplot(@(t)(8-g*t)*(80+r*t)-4*t-640,[0,20]);

grid;

xlabel('t'); ylabel('Q');

②代数法

对目标函数

Q(t)=(8-gt)(80+rt)-4t-640

用MATLAB求t使Q(t)最大。其中,r,g是待定参数。

程序如下:

clear;clc;

syms t;%定义符号变量t

Q=sym('(8-g*t)*(80+r*t)-4*t-640') %建立符号表达式

dQ=diff(Q,'t') %求微分dQ/dt

t=solve(dQ,t) %求dQ=0的解t

r=2;g=0.1;

t=eval(t) %求r=2,g=0.1时的t值

Q=eval(Q) %求r=2,g=0.1,t=10时的Q值(最大值)

要求:

1)运行以上程序。

2)理解程序,对照教材相关内容。

三、实验内容

划艇比赛的成绩

1.用数据拟合求参数α和β。给出α和β值和模型:

alfa =7.2842

bata =-0.1035

模型:log t=log α+βlog n或t=αnβ

2.实际值与计算值比较(数据比较和和拟合图形),程序和运行结果。数据比较:

>> [n',t',(alfa*n.^bata)']

相关文档
最新文档