2024辽宁省大学生数学建模竞赛(C题)数学建模完整思路+完整代码全解全析

news2024/12/23 22:06:03

你是否在寻找数学建模比赛的突破点?数学建模进阶思路!

作为经验丰富的数学建模团队,我们将为你带来2024电工杯数学建模竞赛(B题)的全面解析。这个解决方案包不仅包括完整的代码实现,还有详尽的建模过程和解析,帮助你全面理解并掌握如何解决类似问题。

完整内容在文章末尾阅读全文获取!

# 导入必要的库
import numpy as np
import matplotlib.pyplot as plt

# 定义数据
T = [20, 30, 40, 50, 60] # 反应温度
pH = [3, 5, 7, 9, 11] # 溶液pH
adsorbent = [0.1, 0.2, 0.3, 0.4, 0.5] # 吸附剂用量
removal_rate_As = [[0.5, 0.6, 0.7, 0.8, 0.9], # As(V)去除率
                   [0.3, 0.4, 0.5, 0.6, 0.7],
                   [0.2, 0.3, 0.4, 0.5, 0.6],
                   [0.1, 0.2, 0.3, 0.4, 0.5],
                   [0.05, 0.1, 0.2, 0.3, 0.4]]
removal_rate_ROX = [[0.4, 0.5, 0.6, 0.7, 0.8], # ROX去除率
                    [0.2, 0.3, 0.4, 0.5, 0.6],
                    [0.1, 0.2, 0.3, 0.4, 0.5],
                    [0.05, 0.1, 0.2, 0.3, 0.4],
                    [0.01, 0.05, 0.1, 0.2, 0.3]]

# 绘制As(V)去除率随反应温度变化的图像
plt.figure()
plt.plot(T, removal_rate_As[0], label='pH=3, adsorbent=0.1') # pH=3, adsorbent=0.1的As(V)去除率
plt.plot(T, removal_rate_As[1], label='pH=5, adsorbent=0.2') # pH=5, adsorbent=0.2的As(V)去除率
plt.plot(T, removal_rate_As[2], label='pH=7, adsorbent=0.3') # pH=7, adsorbent=0.3的As(V)去除率
plt.plot(T, removal_rate_As[3], label='pH=9, adsorbent=0.4') # pH=9, adsorbent=0.4的As(V)去除率
plt.plot(T, removal_rate_As[4], label='pH=11, adsorbent=0.5') # pH=11, adsorbent=0.5的As(V)去除率
plt.xlabel('reaction temperature') # 设置x轴标签
plt.ylabel('removal rate') # 设置y轴标签
plt.title('Removal rate of As(V) at different temperatures') # 设置标题
plt.legend() # 显示图例
plt.show() # 显示图像

# 绘制ROX去除率随溶液pH变化的图像


# 小天数模小天数模小天数模小天数模小天数模
# 代码留空
# 小天数模小天数模小天数模小天数模小天数模



# 绘制As(V)去除率随吸附剂用量变化的图像

# 小天数模小天数模小天数模小天数模小天数模
# 代码留空
# 小天数模小天数模小天数模小天数模小天数模

# 绘制ROX去除率随吸附剂用量变化的图像
plt.figure()
plt.plot(adsorbent, removal_rate_ROX[0], label='T=20, pH=3') # T=20, pH=3的ROX去除率
plt.plot(adsorbent, removal_rate_ROX[1], label='T=30, pH=5') # T=30, pH=5的ROX去除率
plt.plot(adsorbent, removal_rate_ROX[2], label='T=40, pH=7') # T=40, pH=7的ROX去除率
plt.plot(adsorbent, removal_rate_ROX[3], label='T=50, pH=9') # T=50, pH=9的ROX去除率
plt.plot(adsorbent, removal_rate_ROX[4], label='T=60, pH=11') # T=60, pH=11的ROX去除率
plt.xlabel('adsorbent dose') # 设置x轴标签
plt.ylabel('removal rate') # 设置y轴标签
plt.title('Removal rate of ROX at different adsorbent doses') # 设置标题
plt.legend() # 显示图例
plt.show() # 显示图像

根据图像可以得出以下结论:
1. 反应温度对As(V)和ROX的去除率影响较大,随着反应温度的增加,去除率也随之增加。
2. 溶液pH对As(V)和ROX的去除率影响较小,pH值在5-9范围内,去除率变化不明显。
3. 吸附剂用量对As(V)和ROX的去除率影响较大,随着吸附剂用量的增加,去除率也随之增加,但增加到一定程度后,去除率变化不明显。

第二个问题是如何选择反应温度,溶液 pH,吸附剂用量让 As(V)和 ROX 的总吸附量尽可能大。

问题重述: 如何选择反应温度,溶液 pH,吸附剂用量,使得改性生物碳对水中洛克沙胂和砷离子的总吸附量最大

数学建模: 假设改性生物碳对水中洛克沙胂和砷离子的吸附符合 Langmuir 吸附模型,其吸附量与溶液中洛克沙胂和砷离子浓度的关系为: Qe = Qm * b * Ce / (1 + b * Ce) 其中,Qe 为吸附量,Qm 为最大吸附量,b 为 Langmuir 吸附常数,Ce 为溶液中洛克沙胂和砷离子的浓度。

设改性生物碳对水中洛克沙胂和砷离子的最大吸附量为 Qm1 和 Qm2,对应的吸附常数分别为 b1 和 b2,则总吸附量为: Qe = Qm1 * b1 * Ce1 / (1 + b1 * Ce1) + Qm2 * b2 * Ce2 / (1 + b2 * Ce2)

根据题目所给的实验数据,可以得到 Qm1、Qm2、b1、b2 的估计值,进而求得总吸附量的估计值。

为了使总吸附量最大,可以通过求解以下最优化问题来确定最佳的反应温度、溶液 pH 和吸附剂用量: max Qe = Qm1 * b1 * Ce1 / (1 + b1 * Ce1) + Qm2 * b2 * Ce2 / (1 + b2 * Ce2) s.t. Ce1 = f1(T, pH, V, m), Ce2 = f2(T, pH, V, m) 其中,f1 和 f2 分别为洛克沙胂和砷离子的浓度函数,其形式由吸附实验数据拟合得到。约束条件中的 T、pH、V、m 分别为反应温度、溶液 pH、溶液体积和吸附剂用量。

通过求解上述最优化问题,可以得到最佳的反应温度、溶液 pH 和吸附剂用量,使得改性生物碳对水中洛克沙胂和砷离子的总吸附量最大。

根据题目中提供的数据,可以将吸附量与反应温度、溶液 pH、吸附剂用量的关系表示为如下公式:

𝑄𝑒=𝑓(𝑇,𝑝𝐻,𝑚)

其中,T为反应温度,pH为溶液 pH,m为吸附剂用量。

更多内容具体可以看看我的主页!
和 《小天数模》 团队,同名公众号 一起拿奖!里面包含本次竞赛全部思路与分析!

包含本次比赛全部题目和单题思路与代码,代码和文章会不断更新

关注小天数模,你们的支持是我更新的动力!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis vs Memcache:哪个更适合你的应用?

Redis vs Memcache:哪个更适合你的应用? 1、存储与持久化2、数据类型支持3、性能与底层机制4、Value值大小限制5、数据备份与容灾6、总结 💖The Begin💖点点关注,收藏不迷路💖 在缓存技术的选择中&#xff…

CV08_深度学习模块之间的缝合教学(3)--加载预训练权重

1.1 引言 我们在修改网络模型,添加或删除模块,或者更改了某一层之后,直接加载原先的预训练权重,肯定是会报错的,因为原来的模型权重和修改后的模型权重之间的结构是不匹配的。 那么我们只想加载那些没有更改过的那个…

Python酷库之旅-第三方库Pandas(020)

目录 一、用法精讲 49、pandas.merge_asof函数 49-1、语法 49-2、参数 49-3、功能 49-4、返回值 49-5、说明 49-5-1、功能 49-6、用法 49-6-1、数据准备 49-6-2、代码示例 49-6-3、结果输出 50、pandas.concat函数 50-1、语法 50-2、参数 50-3、功能 50-4、返…

中仕公考:没有教师资格证能考编吗?

没有教师资格证的考生,是不能参加教师编考试的。但是,符合“先上岗,再考证”的阶段性措施,高校毕业生可在未获得教师资格证的情况下先行就业。其他考生必须首先取得教师资格证,才能参与教师编考试。 报考普通小学和幼…

【Android Studio】实现底部导航栏Tab切换(提供Gitee源码)

前言:本期教学如何制作底部导航栏以及使用Fragment实现页面切换的完整功能,本篇提供所有源代码,均测试无误,大家可以放心使用。 目录 一、功能演示 二、代码实现 2.1、bottom.xml 2.2、message.xml、book.xml和mine.xml 2.3、…

第三期书生大模型实战营之Git前置知识

闯关任务1 每位参与者提交一份自我介绍。 提交地址&#xff1a;https://github.com/InternLM/Tutorial 的 camp3 分支&#xff5e; 要求 1. 命名格式为 camp3_<id>.md&#xff0c;其中 <id> 是您的报名问卷ID。 2. 文件路径应为 ./data/Git/task/。 3. 在 GitHub…

单网口设备的IP地址识别-还原-自组网

1.如果知道该设备所在网段&#xff1a; 此时可以使用nmap工具&#xff0c;进行网段扫描&#xff1a; nmap -sn 192.168.0.0/24 256个地址的子网10秒就能扫描一轮。关掉设备&#xff0c;打开设备&#xff0c;diff&#xff0c;基本就可以定位所要找到目标设备的IP 2.如果不知道…

链接追踪系列-04.linux服务器docker安装elk

[rootVM-24-17-centos ~]# cat /proc/sys/vm/max_map_count 65530 [rootVM-24-17-centos ~]# sysctl -w vm.max_map_count262144 vm.max_map_count 262144 #先创建出相应目录&#xff1a;/opt/dockerV/es/…docker run -e ES_JAVA_OPTS"-Xms512m -Xmx512m" -d -p 92…

隔离驱动-视频课笔记

目录 1、需要隔离的原因 1.2、四种常用的隔离方案 2、脉冲变压器隔离 2.1、脉冲变压器的工作原理 2.2、泄放电阻对开关电路的影响 2.3、本课小结 3、光耦隔离驱动 3.1、光耦隔离驱动原理 3.2、光耦隔离驱动的电源进行分析 3.3、本课小结 4、自举升压驱动 4.1…

哪款开放式运动耳机佩戴最舒服?2024五款备受推崇产品分享!

​热爱户外活动的你&#xff0c;定是对生活有着独到品味的行者。想象一下&#xff0c;在户外活动时&#xff0c;若有一款耳机能完美融入场景&#xff0c;为你带来无与伦比的音乐享受&#xff0c;岂不是锦上添花&#xff1f;此时&#xff0c;开放式耳机便应运而生&#xff0c;其…

SEO:6个避免被搜索引擎惩罚的策略-华媒舍

在当今数字时代&#xff0c;搜索引擎成为了绝大多数人获取信息和产品的首选工具。为了在搜索结果中获得良好的排名&#xff0c;许多网站采用了各种优化策略。有些策略可能会适得其反&#xff0c;引发搜索引擎的惩罚。以下是彭博社发稿推广的6个避免被搜索引擎惩罚的策略。 1. 内…

结合实体类型信息(3)——TransT: 基于类型的多重嵌入表示用于知识图谱补全

1 引言 1.1 问题 仅仅依赖于三元组的结构化信息有其局限性&#xff0c;因为它们往往忽略了知识图谱中丰富的语义信息以及由这些语义信息所代表的先验知识。语义信息是指实体和关系的含义&#xff0c;比如“北京”是“中国”的首都&#xff0c;“苹果”是一种水果。先验知识则…

uniapp编译成h5后接口请求参数变成[object object]

问题&#xff1a;uniapp编译成h5后接口请求参数变成[object object] 但是运行在开发者工具上没有一点问题 排查&#xff1a; 1&#xff1a;请求参数&#xff1a;看是否是在请求前就已经变成了[object object]了 结果&#xff1a; 一切正常 2&#xff1a;请求头&#xff1a;看…

yolov8-obb训练自己的数据集(标注,训练,推理,转化模型)

一、源码 直接去下载官方的yolov8源码就行&#xff0c;那里面集成了 obb ultralytics/ultralytics/cfg/models/v8 at main ultralytics/ultralytics GitHub 二、环境 如果你训练过yolov5以及以上的yolo环境&#xff0c;可以直接拷贝一个用就行&#xff0c;如果没有的话 直…

破解数据孤岛:论数据中台对企业数据治理的作用与挑战-亿发

在数字化转型浪潮中&#xff0c;数据中台这一概念频频被提及。然而&#xff0c;业界目前尚未对数据中台形成统一的定义。本文将基于PowerData的理解&#xff0c;深入探讨数据中台的核心价值与挑战。 数据中台的本质 数据中台不仅仅是一项单一的技术&#xff0c;而是涵盖数据集…

R语言中交互式图表绘制

revenue <- read.csv("data/revenue.csv") 数据集放在了文章末尾&#xff0c;需要自取。 if(!require(plotly)) install.packages("plotly") # 绘制柱状图 p <- plot_ly(revenue,y ~本周,x ~游戏名称,type "bar",name "本周&q…

记一次项目经历

一、项目需求 1、设备四个工位&#xff0c;每个工位需要测试产品的电参数&#xff1b; 2、每个另外加四个位置温度&#xff1b; 3、显示4个通道电流曲线&#xff0c;16个通道温度曲线&#xff1b; 4、可切换工艺参数&#xff1b; 5、常规判定&#xff0c;测试数据保存到表格内&…

AndoridStudio 使用 Inspect code 检查优化代码

日常开发时&#xff0c;AS 会有报黄提示&#xff0c;如果不修改&#xff0c;日积月累下来&#xff0c;应用性能就有问题了。 针对这种情况&#xff0c;可以使用 AS 自带的 Inspect code 功能来批量检查、优化代码。 选择 Code – Inspect Code &#xff0c; 按需选择 整个工…

如何允许从互联网(外网)进入路由器管理页面

1.绑定UDP端口 操作如图所示&#xff1a; 2.然后再绑定虚拟换回网卡 3.然后再把出端口编号设置成为2 使他成为一个双向输入输出具体操作如图所示&#xff1a; 4.进入防火墙然后再启动防火墙进行端口配置&#xff1a; 1.进入端口g0/0/0配置ip地址&#xff08;注意配置的ip地…

【web]-f12-iphone6

题目&#xff1a;屌丝没有苹果&#xff0c;手机都买不起&#xff0c;咋办&#xff1f;室友的iphone6好眼馋&#xff0c;某些网站也只有手机打得开(答案为flag{}形式&#xff0c;提交{}中内容即可) 手机模式浏览&#xff0c;F5刷新下就可以看到了。 flag a2a7c20140d7520903a70…