MATLAB代码,课设。容器内有100L盐水,含盐10kg。 现以每分钟3L的速度注入含有0.01kg的盐水(假定两种盐水立即均匀混合),同时又以每分钟2L的均匀速度从容器内抽出盐水,按要求完成下面题

题目:
容器内有100L盐水,含盐10kg。 现以每分钟3L的速度注入含有0.01kg的盐水(假定两种盐水立即均匀混合),同时又以每分钟2L的均匀速度从容器内抽出盐水,按要求完成下面题目:
(1)用模拟法每隔10min计算一次容器内盐水的体积、含盐量和含盐率,观测60min后盐水的含盐量;
(2)建立微分方程;计算60min后容器内盐水的含盐量;
(3)做出用上述两种方法得到的容器内盐水含盐量随时间的变化曲线。
代码:

在命令行窗口直接输入如下:
%(1)
v(1)=100;
w(1)=10;
p(1)=w(1)/v(1);
for t=10:10:60
v((t/10)+1)=10*3+v((t/10));
w((t/10)+1)=10*0.01*3+w((t/10));
w((t/10)+1)=(1-(10*2/v((t/10)+1)))*w((t/10)+1);
v((t/10)+1)=v((t/10)+1)-10*2;
p((t/10)+1)=w((t/10)+1)/v((t/10)+1);
end
v%盐水体积
w%含盐量
p%含盐率
t=0:10:60;
subplot(1,2,1)
plot(t,w,'*--')
axis([0 60 5 10])
title('模拟法含盐量图像')
%(2)
subplot(1,2,2)
s=dsolve('Dw0=3*0.01-2*w0/(100+t)','w0(0)=10');
ezplot(s,[0,60])
axis([0 60 5 10])
title('微分方程含盐量图像')
x=subs(s,'t',60)
%(3)图像如下:

%输出结果如下:

v =100 110 120 130 140 150 160

w =10.0000 8.7154 7.7275 6.9571 6.3500 5.8676 5.4824

p =0.1000 0.0792 0.0644 0.0535 0.0454 0.0391 0.0343

x =1637/320
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

要多菜有多菜的鸟

如果有帮到你,打个赏吧~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值