资源描述
实 验 报 告
课程名称:_______________________________
学院名称:_______________________________
班 级:_______________________________
姓 名:_______________________________
学 号:_______________________________
_________________学年第 ____________学期
数 学 与 统 计 学 院 制
实验地点
三教A510
课程类别
①公共课□ ②专业课□
实验日期
4.16
实验编组
第A4 组
实验所
用时间
2 小时
实验名称
数学规划模型实验
实验目的
1.掌握建立数学规划模型的方法;
2.掌握用Matlab软件求解线性规划问题的方法
3.能够阅读Matlab结果报告;
3.掌握对数学模型结果的分析;
4.了解建立数学模型的过程。
实验环境
MATLAB软件
一、 实验准备
解微分方程的MATLAB命令
MATLAB中主要用dsolve求符号解析解,ode45,ode23,ode15s求数值解。
s=dsolve(‘方程1’, ‘方程2’,…,’初始条件1’,’初始条件2’ …,’自变量’)
用字符串方程表示,自变量缺省值为t。导数用D表示,2阶导数用D2表示,以此类推。S返回解析解。在方程组情形,s为一个符号结构。
[tout,yout]=ode45(‘yprime’,[t0,tf],y0) 采用变步长四阶Runge-Kutta法和五阶Runge-Kutta-Felhberg法求数值解,yprime是用以表示f(t,y)的M文件名,t0表示自变量的初始值,tf表示自变量的终值,y0表示初始向量值。输出向量tout表示节点(t0,t1, …,tn)T,输出矩阵yout表示数值解,每一列对应y的一个分量。若无输出参数,则自动作出图形。
ode45是最常用的求解微分方程数值解的命令,对于刚性方程组不宜采用。ode23与ode45类似,只是精度低一些。ode12s用来求解刚性方程组,是用格式同ode45。可以用help dsolve, help ode45查阅有关这些命令的详细信息.
二、实验内容
1.建立微分方程模型的基本要素和步骤;
3.使用MATLAB对微分方程模型进行计算与分析;
4.利用微分方程数值解法与图形解对最模型进行观测与分析;
三、实验步骤
使用Matlab软件
1.开启MATLAB软件平台,开启MATLAB编辑窗口;
2.根据问题,建立的微分方程模型,并编写求解微分方程模型的M文件;
3.保存文件并运行;
4.观察运行结果(数值或图形),并不断地改变参数设置观察运行结果;
5.根据观察到的结果和体会,写出实验报告。
四、实验要求与任务
根据实验内容和步骤,完成以下问题中的一个,要求写出实验过程(问题→数学模型→算法与编程→计算结果→分析、检验和结论)
人的体重问题
某人每天由饮食获取10467焦热量,其中5038焦用于新陈代谢,此外每公斤体重需支付69焦热量作为运动消耗,其余热量则转化为脂肪,已知以脂肪形式贮存的热量利用率为100%,每公斤脂肪含热量41868焦,问此人的体重如何随时间而变化?
五、实验过程
设人的体重与时间的函数为w(t),w(0)=50㎏,问人△t天后,体重随时间的变化。
有题意得:
w‵(t)=69w(t)/41868+5038/41868;
求解微分方程
w‵(t)=69w(t)/41868+5038/41868
先求解析解,再求数值解,并进行比较。由
>>clear;
>>s=dsolve('Dw=69w(t)/41868+5038/41868','w (0)=50 ','t’)
>>simplify(s)
可得解析解为s=(8488*exp((23*t)/13956))/69 - 5038/69。下面再求其数值解,先编写M文件fun8.m
function f=fun8(t,w)
f= 69w(t)/41868+5038/41868;
再用命令
>>clear;
>>close;
>>t=0:1:30;
>>w =(8488*exp((23*t)/13956))/69 - 5038/69;
>>plot(t,w,’ro’) %化解析解的图形
结果如图所示。
结果分析:
由图可得,该人的体重是随着时间的增加而增加,应该加强锻炼,才能使增加趋势趋于平缓。该人如想减肥,也应加强锻炼。
实验分析:
在该实验过程中,我们应该熟练的应用matlab软件,学会怎样解微分方程。还要学会怎样建立合理的数学模型,以便使我们的实验结果更加正确。
考核结果
教师签名: 年 月 日
展开阅读全文