数学实验第三版(主编:李继成 赵小艳)课后练习答案(十二)(4)

实验十二:微分方程模型

练习四

1.如图12.12所示,有一只猎狗在B点位置发现了一只兔子在正东北方距离它200m的地方0处,此时兔子开始以8m/s的速度向正西北方距离为120m的洞口A全速跑去,假设猎狗在追赶兔子的时候始终朝着兔子的方向全速奔跑,按要求完成下面的实验:

(1)问猎狗能追上兔子的最小速度是多少?

(2)选取猎狗的速度分别为15m/s,18m/s,计算猎狗追赶兔子时跑过的路程.

(3)画出猎狗追赶兔子奔跑的曲线图.

(4)假设在追逐过程中,当猎狗与兔子之间的距离为30m时,兔子由于害怕,随后奔跑的速度每秒减半,而猎狗却由于兴奋随后奔跑的速度每秒增加0.1倍,再按(1)-(3)完成实验任务.

最小速度即为兔子刚好到达洞口时,猎狗恰好追上的速度。设最小速度为v.

我们不妨以OA方向为y轴正方向,OB方向为x轴负方向建立直角坐标系。

设兔子在t时刻到达了(0,8t)点,而猎狗此刻位置为(x,y),猎狗在该时间内走的路程s.

可列出下列等式:

对上式关于x求导,得

整理可得二阶微分方程的初值问题,(c为初始时猎狗的位置)

(1)

clc;clear;
syms y(x) v
m=x*diff(y,2)==-8/v*sqrt(1+(diff(y))^2);
Dy=diff(y);
y=dsolve(m,y(-200)==0,Dy(-200)==0);
y=matlabFunction(y);
v=solve(y(v,0)==120);
v=v(v>0)

v =(4*61^(1/2))/3 + 20/3

(2)

clc;clear;
syms y(x) 
m=x*diff(y,2)==-8/15*sqrt(1+(diff(y))^2);
Dy=diff(y);
y=dsolve(m,y(-200)==0,Dy(-200)==0);
y=y(1);
y=matlabFunction(y);
y(0)  %149.0683,大于120
f=@(x)y(x)-120;
fsolve(f,-5)% -2.7856 + 0.0000i,则猎狗未追上兔子
t=120/8*15
syms y(x) 
m=x*diff(y,2)==-8/18*sqrt(1+(diff(y))^2);
Dy=diff(y);
y=dsolve(m,y(-200)==0,Dy(-200)==0);
y=y(1);
y=matlabFunction(y);
y(0)  %110.77小于120
t=110.77/8*18

t=225

t = 249.2325

(3)以猎狗的速度为18为例;

clc;clear;
syms y(x) 
m=x*diff(y,2)==-8/18*sqrt(1+(diff(y))^2);
Dy=diff(y);
y=dsolve(m,y(-200)==0,Dy(-200)==0);
y=y(1);
ezplot(y,[-200,0])

(4)能力有限,不写了

2.使用多种方法求解下述问题:在边长为a的正方形的四个顶点上各有一人,如图12.13所示, 在某一时刻,四人同时出发以匀速。按顺时针方向追赶下一个人,如果他们始终保持对准目标,试确定每个人的行进路线,计算每人跑过的路程和经历的时间.

能力有限,不写了 doge

3.有一段时间,某国原子能委员会是这样处理放射性废物的:他们把这些废物装人密封性能很好的圆桶中,然后扔到水深300ft(1ft=0.3048m,约91.44m)的海里,这种做法是否会造成放射性废物泄露污染,自然引起了许多生态学家及社会各界的关注.当时该国原子能委员会认为,用来封装放射性废物的圆桶非常坚固,投放到水深300的海里决不会破损而泄露放射性废物,因此总是认为这种做法是绝对安全的.但是一些工程技术人员却对此表示怀疑,他们认为圆桶在和海底相撞时有可能发生破裂.于是,在当时引起了一场争论.

已知当时该国封装放射性废物使用的是55gal(1gal=3.785L)的圆桶,装满核放射性废物后的重量为527.436lb(1lb=0.4536kg,约239.2450kg),经过多次实验测得圆桶在下沉时所受的浮力为f=2090.735N,阻力系数为c=0.08,圆桶碰撞发生破裂的直线极限速度是40ft/s(约12.192m/s).现在,在约定圆桶以直线方向往下沉的情况下,请你回答这种处理方法可靠吗?

4.如图12.14,有一半径为4a的大圆,里面有一个半径为a的小圆,现在,大圆固定而小圆在大圆内相切滚动,设起点M的坐标为(4a,0),确定小圆上一点M的轨迹曲线,并动态模拟内切小圆的滚动轨迹.

这个画出来是一个星形线,在实验三的练习二的第二题有相似题目。

不妨设a=1;

我们假设大圆内的小圆圆心顺时针旋转θ度,那么其圆心旋转后为(3cosθ,3sinθ);而接触点为(4cosθ,4sinθ),而对应的M点在接触点顺时针旋转4θ后所在的位置,其坐标为(cos4θ^2-sin4θ^2+3cos4θ,2sin4θcos4θ+3sin4θ)

clc;clear;
t=0:0.01:2*pi;m=0:0.01:2*pi;
for i=1:length(t)x=cos(t(i))*cos(-4*t(i))-sin(t(i))*sin(-4*t(i))+3*cos(t(i));y=sin(t(i))*cos(-4*t(i))+cos(t(i))*sin(-4*t(i))+3*sin(t(i));hold onplot(x,y,'r.');getframe;
end 

5.一个人在平面上滑着曲线以恒定的速率跑步,起点在(5,0)处,方向为逆时针,这时,他养的狗在坐标原点处以速率w跑向主人,狗的运动方向始终指向主人,选取不同的v和w,动态演示这个追逐过程。

设在时间t内,人运动的距离为5t,其所对应的圆心角为t,则其位置为(5cost,5sint).

设狗运动到位置(xx,yy).

我们可以根据速度的合成与分解列出一下式子:

其中x=5cost,y=5sint.

clc;clear;w=2;v=5;
f=@(t,x)[w*(v*cos(t)-x(1))/sqrt((v*cos(t)-x(1))^2+(v*sin(t)-x(2))^2);w*(v*sin(t)-x(2))/sqrt((v*cos(t)-x(1))^2+(v*sin(t)-x(2))^2)];
[a,b]=ode45(f,[0,10],[0;0]);
for i=1:length(b(:,1))
plot(b(i,1),b(i,2),'r.');
hold on
ezplot('x^2+y^2-25');
hold on
plot(5*cos(a(i)),5*sin(a(i)),'*');
axis equal
axis off
hold off
getframe;
end

自我提醒:这里有几个问题需要注意:首先,微分方程组在用matlab解的时候首先选择dsolve函数,dsolve函数要求使用sym类型,所以我们要定义一个x(t)和y(t),比如说:

clc;clear;
syms x(t) y(t)
m=[2*diff(x)+diff(y)-y==exp(-t);diff(x)+x+y==0];
dsolve(m)

这里我试了一下x(1)和x(2)的形式,不行,我觉得这种形式主要使用在function类型中。只能用x和y这种。

其次,我们再使用ode类型,ode要求函数定义时使用function类型,function定义时我们可以用f=@(t,x)这种类型或者在另外一个文件新建一个函数function这种。(在本文档后面用function的话需要@函数名);

例如:

clc;clear;
[t,y]=ode15s(@erjie,[0,3000],[2,0]);
plot(t,y(:,1),'-');
function f=erjie(t,y)
f=zeros(2,1);
f=[y(2);1000*(1-y(1)^2)*y(2)-y(1)];
end

另外注意使用f=@(t,x)时,一定注意x和t的顺序,(前者是关于谁的导数,后者是函数)不能搞反了,要不有时候也会报错。

推荐下一篇文章:

数学实验第三版(主编:李继成 赵小艳)课后练习答案(十三)(1)icon-default.png?t=N7T8https://blog.csdn.net/2301_80199493/article/details/136142085?spm=1001.2014.3001.5502

本文由作者自创,由于时间原因,难免出现些许错误,还请大家多多指正。创作不易,请大家多多支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/473784.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++航海王:追寻罗杰的编程之路】string类

目录 1 -> 为什么学习string类? 1.1 -> C语言中的字符串 2 -> 标准库中的string类 2.1 -> string类 2.2 -> string类的常用接口 3 -> string类的模拟实现 3.1 -> 经典的string类问题 3.2 -> 浅拷贝 3.3 -> 深拷贝 3.3.1 ->…

TenorFlow多层感知机识别手写体

文章目录 数据准备建立模型建立输入层 x建立隐藏层h1建立隐藏层h2建立输出层 定义训练方式建立训练数据label真实值 placeholder定义loss function选择optimizer 定义评估模型的准确率计算每一项数据是否正确预测将计算预测正确结果,加总平均 开始训练画出误差执行结…

Unity设备分级策略

Unity设备分级策略 前言 之前自己做的设备分级策略,在此做一个简单的记录和思路分享。希望能给大家带来帮助。 分级策略 根据拟定的评分标准,预生成部分已知机型的分级信息,且保存在包内;如果设备没有被评级过,则优…

多模态(三)--- BLIP原理与源码解读

1 BLIP简介 BLIP: Bootstrapping Language-Image Pre-training for Unified Vision-Language Understanding and Generation 传统的Vision-Language Pre-training (VLP)任务大多是基于理解的任务或基于生成的任务,同时预训练数据多是从web获…

国产制造,欧美品质:爱可声助听器产品质量获国际认可

随着科技的发展和全球化的推进,越来越多的中国制造产品开始走向世界舞台。其中,爱可声助听器凭借其卓越的产品质量,成为了国产制造的骄傲。 国产制造指的是在中国境内生产的产品,欧美品质则是指产品在设计、生产、质量控制等方面…

Invalid DataSize: cannot convert ‘30Mb‘ to Long

Invalid DataSize: cannot convert 30Mb to Long servlet:multipart:max-file-size: 30MBmax-request-size: 30MB

得物面试:Redis用哈希槽,而不是一致性哈希,为什么?

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50)中,最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格,遇到很多很重要的面试题: Redis为何用哈希槽而不用一致性哈希? 最近…

python学习24

前言:相信看到这篇文章的小伙伴都或多或少有一些编程基础,懂得一些linux的基本命令了吧,本篇文章将带领大家服务器如何部署一个使用django框架开发的一个网站进行云服务器端的部署。 文章使用到的的工具 Python:一种编程语言&…

009集——磁盘详解——电脑数据如何存储在磁盘

很多人也知道数据能够保存是由于设备中有一个叫做「硬盘」的组件存在,但也有很多人不知道硬盘是怎样储存这些数据的。这里给大家讲讲其中的原理。 首先我们要明白的是,计算机中只有0和1,那么我们存入硬盘的数据,实际上也就是一堆0…

PLC_博图系列☞LAD

PLC_博图系列☞LAD 文章目录 PLC_博图系列☞LAD背景介绍LAD优势局限 LAD元素 关键字: PLC、 西门子、 博图、 Siemens 、 LAD 背景介绍 这是一篇关于PLC编程的文章,特别是关于西门子的博图软件。我并不是专业的PLC编程人员,也不懂电路&a…

英文论文(sci)解读复现【NO.21】一种基于空间坐标的轻量级目标检测器无人机航空图像的自注意

此前出了目标检测算法改进专栏,但是对于应用于什么场景,需要什么改进方法对应与自己的应用场景有效果,并且多少改进点能发什么水平的文章,为解决大家的困惑,此系列文章旨在给大家解读发表高水平学术期刊中的 SCI论文&a…

简单DP算法(动态规划)

简单DP算法 算法思想例题1、01背包问题题目信息思路题解 2、摘花生题目信息思路题解 3、最长上升子序列题目信息思路题解 题目练习1、地宫取宝题目信息思路题解 2、波动数列题目信息思路题解 算法思想 从集合角度来分析DP问题 例如求最值、求个数 例题 1、01背包问题 题目…