高空抛物现象被称为“悬在城市上空的痛”。在“上海陋习排行榜”中,它与“乱扔垃圾”齐名,排名第二。高空抛物,是一种不文明的行为,而且会带来很大的社会危害。“抛砖砸死女婴”事件经媒体报道后引起社会广泛关注。人们在为百日女婴过早地离开这个世界、父母悲痛欲绝而扼腕的同时,一个有关城市高空抛物威胁人们“头顶安全”的社会问题再次引起人们的热议。如何尽量减小高空抛物对居民人身财产安全的损害,是一个值得研究的问题,请同学们从数学建模的角度回答以下问题。
问题2:一般高层居民楼楼下都有一些小花坛,现在要求从安全的角度建立模型。根据运动轨迹建立出合理模型理论公式,得出楼高和花坛宽度的关系,然后画出其示意图。
比如一般轻的物品衣物纸张等,风阻力影响较大,下降的时候危害不是很大,下面主要考虑的是重一点的花盆之类的。
假设楼高为H,推动花盆的的初始速度为v0,风阻力与速度平方成正比。那么根据牛顿第二定律有m*a = mg - c|v|v
其中m为花盆质量,a为花盆加速度,g为重力加速度,v为花盆速度,c为阻力系数,要求解这样一个方程,需要初始条件为v(0)=[v0;0], x(0)=[0;H]。
需要求解的是当竖直方向下降为H时,水平方向走了多少
代码仅供参考
function main()
clc;clear
m = 1; % 1kg重物
c = 0.05; % 阻力系数
g = 9.8; %重力加速度
v0 = 10; %初始水平速度
H = 0; %初始高度
v02 = 0; %初始竖直速度
D = 0; %初始水平距离
[t,x] = ode45(@(t,x)odefun(t,x,m,c,g), [0,10], [D, v0, 0, v02]);
plot(x(:,3),x(:,1))
xlabel('抛物高度');
ylabel('落地距离')
title(['初速度',num2str(v0),'m/s',';风阻力系数:',num2str(c)])
end
function dxdt = odefun(t, x, m, c, g)
dxdt = zeros(4,1);
resist = -c*norm([x(2),x(4)])*[x(2),x(4)];
dxdt(1) = x(2);
dxdt(2) = resist(1);
dxdt(3) = x(4);
dxdt(4) = m*g + resist(2);
end