【实验目的及要求】

熟练掌握dsolve,ode45,ode15s语句的调用格式;正确区分符号运算与数值运算的不同,避免出现混淆调用的情况;对实际问题,能够建立微分方程数学模型,能够用dsolve,ode45,ode15s等语句进行求解

【实验过程】(实验步骤、绘图、记录、数据、分析、结果及实验教师评语(可选))

一.实验题目

1.(必做题)解微分方程(组)

(1)

(提示可以考虑,以特解函数及其一阶、二阶导数曲线图形来表示)

解:①将高阶微分方程化为一阶微分方程组,设,则有

②建立函数文件

functiondy=myfun(x,y)

dy=[y(2);y(3);(y(3)-1)^2-y(2)-y(1)^2];

③主程序:

[x,y]=ode45('myfun',[0,20],[0;1;-1]);

plot(x,y(:,1),'*',x,y(:,2),'+',x,y(:,3),'o')

%legend('y','y的一阶导数','y的二阶导数');

④结果

注意此题得不到解析解,只能用数值解,解法可参看PPT中数值解例题3

(2)运用数值解手段描述下面常微分方程组在初值下的相空间的相轨线.

解:①建立函数文件

functiondx=lorenz(t,x)

dx=[-8/3*x(1)+x(2)*x(3);-10*x(2)+10*x(3);-x(1)*x(2)+28*x(2)-x(3)];

②主程序文件

[t,x]=ode45('lorenz',[0,100],[0;0;1e-10]);

axis([0 40 -20 20 -20 20]);

plot3(x(:,1),x(:,2),x(:,3));

gridon

③结果

(3)求的数值解,并画出图像

解:首先建立odefun1.m如下:

function dy=odefun1(x,y);

dy=[-0.01*y(1)-99.99*y(2);-100*y(2)];

然后建立主程序shiyan2_3.m

clc

clear

close all

[x,y]=ode15s('odefun1',[0 100],[2;1])

plot(x,y(:,1),'*',x,y(:,2),'r*')

结果为

(4)求下列方程的通解及特解

(Bessel方程,令n=½)

解:求通解的主程序为(syms n)

diff_y='x^2*D2y+x*Dy+(x^2-(1/2)^2)*y=0';

y=dsolve(diff_y,'x')

结果为:

y=C1/x^(1/2)*sin(x)+C2/x^(1/2)*cos(x)

y =

(2^(1/2)*C12*cos(x))/(pi^(1/2)*x^(1/2)) + (2^(1/2)*C13*sin(x))/(pi^(1/2)*x^(1/2))

求特解的主程序为

diff_y='x^2*D2y+x*Dy+(x^2-(1/2)^2)*y=0';

y=dsolve(diff_y,'y(pi/2)=2,Dy(pi/2)=-2/pi','x')

结果为:

y =2^(1/2)*pi^(1/2)/x^(1/2)*sin(x)

y =

(2*sin(x)*(pi/2)^(1/2))/x^(1/2) + (cos(x)*(2/(pi/2)^(1/2) - pi/(pi/2)^(3/2)))/(2*x^(1/2))

2.(必做题)凶杀案作案时间问题:受害者的尸体于晚上7:30被发现,法医于晚上8:20赶到凶案现场,测得尸体温度为32.6℃;一小时后,当尸体即将被抬走时,测得尸体温度为31.4℃,室温在几个小时内始终保持21.1℃。此案最大的嫌疑犯张某声称自己是无罪的,并有证人说:“下午张某一直在办公室上班,5:00时打完电话后就离开了办公室”。从张某到受害者家(凶案现场)步行需5分钟,现在的问题是,张某不在凶案现场的证言能否被采信,使他排除在嫌疑犯之外。(提示:Newton冷却定理告诉我们“物体在介质中冷却速度同该物体温度与介质温度之差成正比”)

解:首先应确定凶案的发生时间,若死亡时间在下午5点5分之前,则张某就不是嫌疑犯,否则不能将张某排除。

设T(t)表示t时刻尸体的温度,并记晚上8:20为t=0,则T(0)=32.6℃,T(1)=31.4℃。假设受害者死亡时体温是正常的,即T=37℃(查资料)是要确定受害者死亡的时间,也就是求T(t)=37℃的时刻,进而确定张某是否是嫌疑犯。

人体体温受大脑神经中枢调节。人死亡后体温调节的功能消失,尸体的温度受外界环境温度的影响。假设尸体温度的变化率服从牛顿冷却定律,即尸体温度的变化律与他同周围的温度差成正比。即

模型:由Newton冷却定理可得一阶线性微分方程模型

求解:(1)首先用dsolve求解该方程的解析解

程序:

symslamd

sy3d11='DT+lamd*(T-21.1)=0';

T=dsolve(sy3d11,'T(0)=32.6','t')

结果:

T =211/10+23/2*exp(-lamd*t)

T =23/(2*exp(lamd*t)) + 211/10

(2)求解参数lamd

可以利用初始条件“1小时后,当尸体即将被抬走时,测得尸体温度为31.4℃”

由上式可以得到:31.4=21.1+11.5*exp(-1*lamd)

lamd的值为0.11020314013361429463890984998294

(程序:lamd=solve('31.4-21.1-11.5*exp(-1*lamd)=0','lamd')

(3)求解t0

当T=37℃时,有t=-2.95小时

(程序:t0=solve('37-21.1-11.5*exp(-0.11*t)','t'))

=-2小时57分,

8小时20分-2小时57分=5小时23分。即死亡时间大约在5:23,

因此张某不能被排除在嫌疑犯之外。

matlab分布傅里叶解微分方程,专题四 微分方程的matlab求解相关推荐

  1. matlab中字符表示,(专题一)07 matlab中字符串的表示

    matlab中,字符串使用单引号括起来的字符序列 >>xm='Central South University' >>xm(1:3) ans= Cen 截取1--3这三个字符, ...

  2. matlab ode45 二阶微分,matlab关于ode45解二阶微分方程的困惑

    matlab关于ode45解二阶微分方程的困惑 matlab关于ode45解二阶微分方程的困惑 一个二阶微分方程: y''+y'+y=sin(t) 初始条件为y(0)=5,y'(0)=6. 过程: 先 ...

  3. 分步傅里叶算法_分布傅里叶算法求解非线性薛定谔的matlab程序问题

    [size=14.399999618530273px]分布傅里叶算法求解非线性薛定谔的matlab程序里,我注释的可能也有错误,请指导@alpha=0;  %光纤损耗值,单位dB/km alph=al ...

  4. 完全手册-MATLAB使用详解:基础、开发及工程应用

    [书名]完全手册-MATLAB使用详解:基础.开发及工程应用 [作者]董霖 编著 [ISBN]978-7-121-07397-7 [出版社]电子工业出版社 [出版日期]2009年1月 [内容简介] M ...

  5. 02 解方程专题 (各学科:高数、线代、专业课)

    解方程专题(各学科:高数.线代.专业课) 一.高等数学--微分方程 常微分方程分类: (1)一阶常系数方程 1.1可分离变量的微分方程 1.2.齐次微分方程 1.3.一阶线性微分方程 1.4.伯努利方 ...

  6. 【基于MATLAB的数字图像处理】第四章·图像增强

    系列文章 ·[基于MATLAB的数字图像处理]第一章·绪论 ·[基于MATLAB的数字图像处理]第二章·视觉系统与图像处理系统 ·[基于MATLAB的数字图像处理]第三章·基本图像变换 ·[基于MAT ...

  7. Matlab S-Function详解

    Part I: 所谓s函数是system Function的简称, 用它来写自己的simulink模块. s函数可以用matlab.C.C++.Fortran.Ada等语言来写, 这儿我只介绍怎样用m ...

  8. 解题报告:【kuangbin带你飞】专题四 最短路练习题

    目录 A. POJ - 2387 TiltheCowsComeHomeTil\ the\ Cows\ Come\ HomeTil the Cows Come Home--------(最短路模板题)[ ...

  9. 开发指南专题四:JEECG微云快速开发平台--JEECG开发环境搭建

    开发指南专题四:JEECG微云快速开发平台开发环境搭建 1. JEECG开发环境搭建 JEECG推荐的开发环境为Myeclipse8.5/Eclipse3.7+JDK1.6+Tomcat6.0 1.1 ...

最新文章

  1. 关于bitmap,为什么android会有bitmap
  2. java frame 显示图片_java 图像显示
  3. Windows驱动开发学习笔记(三)—— 内核空间内核模块
  4. ubuntu vi 按方向键出现很多字母是怎么回事?(没安装vim)
  5. 一男子安装lua开发环境傻逼操作,惊呆所有人
  6. JSK-T1011 反向输出一个三位数【入门】
  7. 通过用户电脑ip获取用户当前所在城市以及天气
  8. OSChina 周四乱弹 —— 懦夫!你就不能找富婆吗
  9. 使用C#在VS窗体应用中调起一个选择框,完成图片替换
  10. AWS大数据三种经典玩法
  11. 美的发布行业首支说唱MV,打造懂年轻人的美的微晶冰箱
  12. 2.基于ITIL的IT服务管理基础篇 --- IT服务管理的背景
  13. ASP.NET 在 Windows Azure 环境中使用基于 SQLServer 的 Session
  14. 职业生涯的7个发展阶段及如何在每个阶段成功?
  15. Pandas中的pivot操作
  16. 【Top 30+案例评选】CSDN“2019 优秀AI、IoT应用案例TOP 30+”正式发布
  17. Marple表演电影字幕
  18. 【Axure原型分享】工作计划日历
  19. Ubuntu下解决Make的:cc1plus: warnings being treated as errors
  20. 【RabbitMQ】消息的可靠性投递与签收

热门文章

  1. AIFF格式容器规范
  2. 基于svelte3+sass仿微信网页版聊天|svelte.js 桌面聊天实例SvelteWebChat
  3. 视频转文字怎么转?安利下面这三个方法给你
  4. 微信小程序开发(英语学习助手)
  5. 考研北京理工计算机科学与技术,北京理工大学2021考研大纲:计算机科学与技术专业基础综合...
  6. 经纬恒润位列“2021北京民营企业科技创新百强榜单”第40名
  7. 计算两个圆相交部分的面积
  8. opencv读取realsense
  9. 安装rabbitMq报错:error: unpacking of archive failed on file /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.9
  10. 华为鸿蒙OS2.0:为中国的软件行业种“根”