大学化学数值仿真与可视化案例库
本项目基于 Syslab Julia、TyPlot 与 TyAppDesigner,提供 13 个模块、61 个可独立运行的大学化学数值仿真与可视化脚本案例,并新增 5 个带真实 GUI 界面的化学方向教学 App。本项目不包含统一 main.jl。
第二轮升级重点强化了非线性动力学、反应扩散、量子轨道、材料结构、电化学新能源、光谱模拟和化学工程过程仿真。新增案例优先采用云图、等值线图、三维图、概率密度图和动态演化图,适合课堂演示和参数探究。
目录结构
01_化学动力学:一级、二级、连续、平行反应,Arrhenius 分析与速率常数拟合。02_化学平衡:弱酸、电离、缓冲、滴定、沉淀和络合平衡。03_分析化学:吸光定律、标准曲线、多组分光谱、紫外可见光谱和荧光猝灭。04_化学热力学:理想气体、真实气体、Clausius-Clapeyron、Gibbs 自由能和相图。05_电化学:能斯特方程、原电池、浓差电池、放电曲线和电导率。06_结构化学与量子化学:粒子箱、氢原子轨道、杂化轨道、氢分子轨道、振动和转动能级。07_传质与扩散:一维/二维扩散、扩散反应耦合和吸附动力学。08_化工基础:批式、CSTR、PFR、串联反应器和换热器。07_反应扩散与复杂系统:碘钟反应、BZ 振荡、Brusselator、Gray-Scott 斑图和反应扩散耦合。08_材料化学:晶体结构、晶体缺陷、晶粒生长 Monte Carlo。09_电化学与新能源:锂离子电池、浓差极化、燃料电池性能。10_光谱化学:红外、拉曼、核磁共振、升级版 UV-Vis 光谱。11_化学工程过程仿真:精馏塔、放热反应器热点、催化剂颗粒内部扩散。
重点推荐案例
★★★★★重点推荐:
07_反应扩散与复杂系统/GrayScott反应扩散斑图.jl:二维反应扩散自组织斑图,展示豹纹、迷宫纹和指纹纹理参数效应。07_反应扩散与复杂系统/BZ振荡反应模拟.jl:非线性化学振荡、浓度时间曲线和相轨迹。08_材料化学/晶粒生长MonteCarlo模拟.jl:Monte Carlo 晶界迁移和彩色晶粒云图。06_结构化学与量子化学/氢原子轨道三维云图.jl:轨道概率密度、二维截面和三维等值点云。09_电化学与新能源/锂离子电池充放电模拟.jl:SOC、电压平台和颗粒内简化扩散。10_光谱化学/核磁共振谱模拟.jl:化学位移、峰分裂和谱峰归属。11_化学工程过程仿真/放热反应器热点形成模拟.jl:放热反应热点形成与温度云图。
新增与升级案例
06_结构化学与量子化学
氢原子轨道三维云图.jl:替换原二维轨道云图,展示 1s、2s、2p、3d 轨道概率密度、二维云图和三维等值点云。sp_sp2_sp3杂化轨道模拟.jl:展示 s/p 轨道线性组合形成 sp、sp2、sp3 杂化轨道。氢分子轨道形成模拟.jl:展示 1s+1s 形成 σ 成键轨道和 σ* 反键轨道。
07_反应扩散与复杂系统
碘钟反应动力学模拟.jl:模拟诱导期、突变显色和关键浓度变化。BZ振荡反应模拟.jl:采用 Oregonator 简化模型显示化学振荡和相轨迹。Brusselator振荡反应模型.jl:展示非线性动力学、稳态和极限环。GrayScott反应扩散斑图.jl:二维有限差分反应扩散斑图,适合参数演示。反应扩散耦合过程.jl:二维扩散与一级反应耦合的云图对比。
08_材料化学
晶体结构三维展示.jl:FCC、BCC、HCP 原子排列三维展示。晶体缺陷与位错模拟.jl:空位、间隙原子和位错结构对比。晶粒生长MonteCarlo模拟.jl:晶粒长大过程和晶粒尺寸统计。
09_电化学与新能源
锂离子电池充放电模拟.jl:SOC、电压变化、容量、能量和简化扩散剖面。电极浓差极化模拟.jl:电极扩散层浓度云图和浓度剖面。燃料电池性能模拟.jl:活化极化、欧姆极化、浓差极化和功率密度曲线。
10_光谱化学
红外光谱模拟.jl:典型官能团 IR 高斯峰模拟。拉曼光谱模拟.jl:Stokes 与 Anti-Stokes 拉曼峰。核磁共振谱模拟.jl:化学位移、n+1 裂分和峰位分析。紫外可见吸收光谱模拟.jl:多峰吸收、峰展宽和基线影响。
11_化学工程过程仿真
精馏塔分离过程模拟.jl:McCabe-Thiele 图和塔板组成变化。放热反应器热点形成模拟.jl:二维热点形成、温度云图和热失控趋势。催化剂颗粒内部扩散模拟.jl:球形颗粒浓度剖面、Thiele 模数和有效因子。
原有案例概览
原有 41 个基础案例仍保留,覆盖化学动力学、化学平衡、分析化学、热力学、电化学、结构化学、传质扩散和化工基础。基础案例用于概念入门,高级案例用于课堂演示、参数扫描和数值仿真拓展。
运行方式
每个 .jl 文件都可以单独运行,不依赖其他案例脚本或外部函数文件。进入任意案例所在目录后,在 Syslab Julia 环境中运行:
include("案例文件名.jl")
也可以在 Syslab 编辑器中直接打开对应 .jl 文件运行。每个脚本会直接打开可见图窗显示曲线、云图或三维图,不会保存图片到本地。
参数修改方式
每个脚本均包含“参数设置区”。教师或学生可直接修改速率常数、平衡常数、扩散系数、网格数、时间步长、谱峰位置、峰宽、反应器参数等,再重新运行脚本观察结果变化。
截图占位说明
本案例库当前不保存图片文件。若后续需要制作课件,可在 Syslab 图窗中手动截图,并按如下占位命名:
screenshots/GrayScott反应扩散斑图.pngscreenshots/BZ振荡反应模拟.pngscreenshots/晶粒生长MonteCarlo模拟.pngscreenshots/氢原子轨道三维云图.pngscreenshots/锂离子电池充放电模拟.pngscreenshots/核磁共振谱模拟.pngscreenshots/放热反应器热点形成模拟.png
质量要求
- 所有案例均为独立脚本。
- 不开发
main.jl。 - 所有脚本文件名使用中文。
- 代码注释使用中文。
- 变量名和函数名避免使用中文。
- 图形直接显示,不默认保存到本地。
- 数值计算包含非负约束、限幅或保护常量,降低 NaN、Inf、除零和维度错误风险。
适用课程
适用于大学化学、物理化学、分析化学、结构化学、电化学、材料化学、化工原理、数值计算与科学可视化等课程的课堂演示、作业拓展和实验前预习。
教学 App
本案例库新增 教学App 一级目录,包含 5 个化学方向教学 App。每个 App 都使用 Syslab TyAppDesigner 创建真实 GUI 窗口,而不是命令行封装或纯脚本状态字典:
化学反应动力学教学App分子光谱分析教学App化学反应扩散教学App分子结构与轨道教学App电化学与新能源教学App
每个 App 均包含 App主程序.jl、计算函数.jl、示例参数说明.md 和 README.md。App主程序.jl 中包含 uifigure 主窗口、uipanel 参数区、uidropdown 任务选择、uinumericeditfield 参数输入框、uibutton 回调按钮、uitextarea 中文结果区和 uiaxes 曲线绘图区。按钮回调采用 Syslab App Designer 支持的字符串回调方式注册,运行后直接在界面坐标轴中绘制曲线,不自动保存图片到本地。
进入任一 App 文件夹后,可在 Syslab Julia 中运行:
include("App主程序.jl")
对应模块名.open_app()
App 代码使用英文变量名和函数名,中文注释、中文界面文字和中文错误提示;每个变量字段均带中文注释,便于教学二次开发。