示例总览
PSuM 示例¶
PSuM 的自带的示例程序分为两类:tour 系列和benchmark 系列。
Tour 系列 (Quick Start)¶
Tour 系列的引导文档位于 docs/psum_tour/,详细介绍了如何从零开始编写 tour 算例。
此外,每个阶段的参考代码都放在 example/ 下对应的子目录,便于与自己的代码比较。
它们不追求物理上的严谨和完整,而是强调可交互性和直观可检验性, 你看一眼可视化输出就能判断程序是否正确。
阅读 tour 文档时,建议先自己新建文件并跟随指引改动.
example 下已经存在的文件 (如stage_1.cpp、stage_2.cpp) 是"参考答案", 不是必须一开始直接运行的入口。
-
Big Bang (
example/big_bang/, 详细说明):二维静电 PIC 入门算例。 在方形区域中放入一小团同号带电粒子,自洽电场使粒子团向外膨胀,到达边界的粒子被吸收。 文档以 6 个 stage 逐步展开:从网格和场量创建、粒子初始化与电荷沉积,到粒子运动与边界处理、Poisson 求解器接入,最后加入能量守恒诊断。 -
Neon Light (
example/neon_light/, 详细说明):二维 Poisson 复杂边界算例。 从结构化.plt位图恢复host_node_field2D,用Dirichlet_func和interp把图案区域设置为内部时变 Dirichlet 边界。 文档以 5 个 stage 展开:从位图读入、Poisson 求解器建立、内部边界配置,到时变边界值和最终动画效果。 -
Telescope (
example/telescope/, 详细说明):二维光线追踪算例。 模拟简化版 Maksutov 望远镜:平行光从左侧入射,经过校正器折射、主镜反射、次镜反射后会聚到焦平面。 文档以 5 个 stage 展开:从光子定义与基本运动循环、边界系统接入,到弧形边界面反射实现,最后加入折射与校正器,全程有动画输出。 -
Avalanche (
example/avalanche/, 详细说明):二维 MCC 碰撞算例。 在区域中放置高速电子,背景为高斯分布的气团;电子进入气团后发生弹性散射与电离碰撞,次级电子继续碰撞电离,形成雪崩级联。 文档以 5 个 stage 展开:从粒子初始化、场量与沉积,到 MCC 碰撞模型接入、次级粒子产生与 buffer 机制。
如果你有兴趣写一个新的 tour 算例,在
docs/psum_tour/下新建一篇引导文档,并在example/下创建对应的代码目录即可。
Benchmark 系列¶
基准算例位于 application/benchmark/ 下。它们是经过验证的典范算例,用于检验 PSuM 的正确性与性能。
每个算例通常只做简要介绍,但包含完整的物理模型、参考结果和可重复的编译/运行流程。
- CCP (
application/benchmark/CCP/):容性耦合等离子体(1D),He 放电 + MCC,RF 偏压 450 V / 13.56 MHz,含文献对照。 - DSMC (
application/benchmark/DSMC/):稀薄气体 DSMC 算例,N₂ 超声速射流撞击平板,VHS 碰撞模型 + 内能交换。 - EDI (
application/benchmark/EDI/):ExB 漂移放电(2D),模拟霍尔推进器通道内电子/离子输运,含磁场剖面与电离源项。 - TSI (
application/benchmark/TSI/):双流不稳定性(1D),经典静电动理学基准,用于检验能量守恒与相空间演化。 - sheath (
application/benchmark/sheath/):等离子体鞘层(1D),偏压壁面 12.5 V, 含文献对照。 - particle-impulse-integration (
application/benchmark/particle-impulse-integration/):粒子脉冲积分;自由分子流稳态快速算法,与高精度参考解对照。