FluidSim 流体仿真
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/fluidsim。
技能介绍
要解决什么问题
做周期域上的湍流、涡动力学或地球物理流动时,你往往要在 Fortran/C++ 求解器 与 Python 脚本胶水 之间反复切换:网格与谱方法、时间步进、HDF5 输出、后处理可视化各是一套工具链。FluidSim 把这条链路收进一个面向对象的 Python 框架里,用 基于 FFT 的伪谱方法 处理周期边界,目标是在保持脚本可读性的前提下,把计算性能拉到可与传统 HPC 代码同台竞技的水平。
技能如何帮你跑通一条模拟
工作流可以概括为五步:导入求解器 → 创建 Parameters → 实例化 Simul → time_stepping.start() → 用内置输出或 ParaView/VisIt 分析。按物理问题选求解器即可,例如 ns2d/ns3d 做 Navier-Stokes,sw1l 做浅水,ns2d.strat/ns3d.strat 做分层流。参数通过圆点记法挂在 params 上(域分辨率、nu_2、时间步、t_end、初始条件与输出开关),拼写错误会触发 AttributeError,避免静默写错配置。
运行中会产出 HDF5 物理场、体积平均时间序列和 能量/拟能谱;可用 sim.output.phys_fields.plot("vorticity") 做交互式图,或加载先前模拟做参数化对比。进阶场景包括自定义强迫与初场、MPI 并行 以及多参数批量研究;细节以技能内 references/ 文档为准。
适用边界
- 框架侧重 周期域伪谱 场景,非周期或复杂几何边界需另选方法或前处理。
- 高性能依赖 Pythran/Transonic 与可选 MPI 环境,集群部署与性能调优要按官方安装与 advanced 文档配置。
- 3D 高分辨率算例对内存与通信敏感,应先在小分辨率上验证参数与时间步再放大。
使用场景
- 在周期域上配置 `ns2d` 分辨率与 `nu_2`,跑完算例后用 `phys_fields.plot` 查看涡量场演化。
- 用 Taylor-Green 涡等标准验证案例,对照数值解与理论结果检查时间步与耗散设置是否合理。
- 在 MPI 集群上提交高分辨率 `ns3d` 作业,统一管理 HDF5 物理场与谱输出供后续对比。
- 针对旋转浅水或地球物理问题选用 `sw1l`,完成模拟并分析体积平均量与能量谱时间序列。
适合人员
- 攻读湍流或涡动力学方向、需要在 Python 里反复改初场、强迫与分辨率做周期域算例的研究生。
- 做海洋/大气数值实验的研究员,要用分层求解器(如 `ns2d.strat`)跑多组参数并对比谱与均值序列。
- 负责把课题组 CFD 脚本从本机原型迁到集群的工程师,需要理清 Parameters、重启模拟与 MPI 提交流程。
- 主要用 ParaView 或 VisIt 处理 `.h5` 场数据、向合作者交付可视化结果的后处理与分析人员。