← 返回项目库
科学计算流体力学教学工程仿真高校课程设计

基于MATLAB的CFD仿真平台

面向教学和实验的 MATLAB 与 GNU Octave 二维 CFD 仿真平台,支持障碍物图像识别、PISO 压力—速度耦合求解和速度场动画查看。

CFDRAT-zh 提供一个可独立运行的中文图形界面:用户填写计算域、入口速度、物性、网格和时间参数,选择障碍物图像后启动仿真;程序先展示网格节点分类并执行完整性检查,再保存速度、压力、网格和求解元数据到 MAT 结果文件。结果窗口支持速度幅值动画、时间滑块和播放速度切换。

真实界面

项目截图

共 7 张

仿真参数设置(默认)
仿真参数设置(已配置)
网格节点分类(64×14)
仿真结果(已保存)
速度场动画(时间 0.000 s)
速度场动画(时间 0.001 s)
速度场动画(播放速度 2 倍)

Capabilities

核心功能

中文仿真参数设置图形界面
从障碍物图像提取流体域轮廓
结构化压力网格和交错速度网格生成
PISO 压力—速度耦合时间推进
网格节点分类、覆盖与唯一性完整性检查
速度、压力和网格结果保存为 MAT 文件
速度幅值动画播放、暂停、滑块和速度切换
没有并行工具箱时自动回退串行计算

适用场景

课堂上演示障碍物绕流、网格分类和 PISO 求解过程
调整入口速度、物性和网格规模,比较二维流场结果
加载已保存 MAT 文件,通过动画滑块查看速度场随时间变化
在 GNU Octave 中以低规模参数做本地兼容性回归

适合谁

流体力学课程教师与学生、需要演示不可压缩流动数值方法的研发团队,以及希望在 MATLAB 或 GNU Octave 中验证二维 PISO 求解流程的工程人员。

商业化思路

源码交付与教学、研究、课程设计支持;使用方自行准备 MATLAB 或 GNU Octave 运行环境,并根据实际算例承担计算资源和结果解释责任。

你会拿到什么

  • MATLAB/GNU Octave 源码、中文 GUI、PISO 求解器和可视化模块
  • 示例障碍物图像、中文 README、用户指南和 MIT LICENSE
  • 已验证的网格检查、串行兼容性和 MAT 结果保存实现

部署流程

  1. 1安装 MATLAB 或 GNU Octave;在 GNU Octave 中安装 image 包并确认 Qt 图形工具包可用
  2. 2在项目根目录执行 addpath(genpath(pwd)); cfdrat(); 启动中文图形界面
  3. 3选择障碍物图像并填写低规模参数,先通过网格完整性检查,再继续 PISO 仿真
  4. 4在结果可视化面板加载 MAT 文件,检查速度动画、时间滑块和播放速度控制

真实验证结果

已在 GNU Octave 11.3.0 Qt 图形界面完成真实低规模运行:参数填写、网格节点分类检查、PISO 求解、MAT 保存、速度动画、时间滑块、2 倍播放速度及播放/暂停均有可见运行证据。

部署前须知

这是面向层流教学和实验的二维求解器,内部对雷诺数设有约 300 的稳定性上限;节点数和仿真时长增大后计算成本会显著上升。GNU Octave 的并行工具箱不存在时会使用串行模式。结果仅代表本地数值模型,不替代工程级 CFD 验证。

部署难度

简单

最低配置

本地运行需要 MATLAB(建议 R2020b 或更高版本)或 GNU Octave 11.3+;GNU Octave 需要 image 包,图形界面建议使用 Qt 图形工具包。无服务器端服务依赖。

开源许可证

MIT License

最后验证

2026-08-30

技术栈

MATLABGNU Octave二维有限差分/有限体积离散交错网格PISOMAT 文件与 Qt 图形界面

授权说明

仓库包含 MIT License,版权声明为 Copyright (c) 2025 RatEmperior。交付包保留 LICENSE、上游版权和 MIT 条款;中文化及兼容性修改不改变上游许可义务。

Release notes

版本记录

1 个已发布版本

vcn-a1c36df1bbf2 当前推荐

补充 GNU Octave image 包自动加载和无并行工具箱时的串行回退;修复 Qt 图形界面下网格检查、动画透明度、回调句柄和 MAT 保存兼容性;重写中文 README 以匹配真实入口和操作路径。

部署要求:需要 MATLAB 或 GNU Octave 11.3+;GNU Octave 需要 image 包并建议使用 Qt 图形工具包。

已知问题:求解器适合层流教学与实验,雷诺数约 300 为内部稳定性边界;大规模网格和长时间仿真需要更多计算资源。

登录后领取