完整代码与注释:浓溶液稀释系统动态调控

项目介绍

浓溶液的稀释计算广泛应用于药剂生产。由3个容器构成了一个稀释系统。3个容器内装着体积分别是V1、V2、V3的盐水(三个容器都从上面的开口接水,下面有一个口出水)。
纯净水从上端倒入容器1,随后混合液体从容器1流入容器2,再从容器2流入容器3,最后流出容器3。每一段的流速是相同的为Vr。
(1)已知Vr=45.46(L/min),容器内盐的初始值分别是6.8千克、0千克、0千克。容器3内的盐含量如data.xlsx,试建立数学模型,计算出容器2的盐含量随时间变化情况。
(2)利用问题(1)的数学模型确定最快流速,确保容器3工作前20分钟,容器3的盐含量不超过3.18千克,且容器3的盐含量超过2.27千克的时间超过5分钟。
关键词

  1. 浓溶液稀释
  2. 容器动态模型
  3. 盐含量调控
  4. 数据可视化
  5. 数学建模

效果展示

在这里插入图片描述
在这里插入图片描述

项目思路

  1. 数据读取与理解
  • 利用pandas库读取名为data.xlsx的Excel文件,获取时间(min)和盐含量(kg)两列数据。
  • 通过对数据的初步观察,理解数据的分布和特点。
  1. 数据可视化
  • 使用matplotlib库绘制盐含量随时间变化的散点图,以直观展示数据分布情况。
  • 添加合适的标签和标题,使图表更易于理解。
  1. 建立数学模型
  • 定义一个用于拟合的函数func,包含时间 t、和四个参数 a、b、c、d。
  • 选择指数衰减的形式,使用两个指数项表示混合液体中的盐含量变化。
  • 建立数学模型的过程是对实际情况的抽象,需要考虑函数形式和参数的物理意义。
  1. 曲线拟合
  • 利用scipy.optimize.curve_fit进行曲线拟合,拟合函数为上一步定义的func。
  • 获取拟合参数 popt 和协方差 pcov。
  1. 拟合结果可视化
  • 利用拟合参数,绘制拟合曲线,将其与原始数据散点图进行对比。
  • 在图表上标注拟合参数,以便观察者了解拟合函数的形状和贴合度。

具体代码

import pandas as pd
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit
import numpy as np

# 读取数据
data = pd.read_excel('data.xlsx')
time = data['时间(min)']
salt_content = data['盐含量(kg)']

# 数据可视化
plt.plot(time, salt_content, 'o', label='Data')
plt.xlabel('Time (min)')
plt.ylabel('Salt Content (kg)')
plt.title('Salt Content vs. Time')
plt.legend()
plt.show()

# 使用曲线拟合
def func(t, a, b, c, d):
    return a * np.exp(-b * t) + c * np.exp(-d * t)

popt, pcov = curve_fit(func, time, salt_content)

# 绘制拟合曲线
plt.plot(time, salt_content, 'o', label='Data')
plt.plot(time, func(time, *popt), 'r-', label='Fit: a=%5.3f, b=%5.3f, c=%5.3f, d=%5.3f' % tuple(popt))
plt.xlabel('Time (min)')
plt.ylabel('Salt Content (kg)')
plt.title('Salt Content vs. Time with Curve Fit')
plt.legend()
plt.show()

项目链接

GitHub:https://github.com/Olivia-account/Dynamic-Regulation-of-Concentrated-Solution-Dilution-System

后记

如果觉得有帮助的话,求 关注、收藏、点赞、星星 哦!

  • 16
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

人工智能技术小白修炼手册

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值