G_Collision

概览

G_Collision 包含 G01_MCC 截面表碰撞模块和 G02_MCC_network 数据驱动的批量碰撞网络。

子模块

模块

数据对象

主要职责

G01_MCC

粒子数组 par(1:6,1:npmax)、截面表、背景中性气体密度

用 null-collision 方法抽样碰撞,更新粒子速度,并在电离时生成新电子/离子和源项。

G02_MCC_network

版本化 CSV 模型包、粒子与背景状态、碰撞结果和源项

每个 PIC 步批量处理粒子,支持二体与三体通道、C++ 接口及零维碰撞盒验证。

数据和调用边界

  • G01 的截面插值假设等间隔能量网格,碰撞例程使用 MPI_Allreduce。

  • G02 的 C++20 核心可独立构建,MPI/OpenMP 可选;模型包采用显式单位与状态约定。

  • 两个模块均不负责粒子推进和边界处理;G02 附带数据是合成值,不用于科研结论。

  • tests/009_collision 包含 G01 加载器回归和 G02 单元、统计及零维算例验证。

文档组织

初次学习,推荐进入 G02 模块页, 按 MCC 基本概念 → 程序实现 → 零维碰撞盒 的顺序阅读。 算例部分保留运行命令、三张图的读法与检查判据。

两个子模块的公式、接口和限制见各自页面;G02 的测试与零维算例运行方式见 009_collision 测试总览。

Overview

G_Collision contains the tabulated-cross-section G01_MCC module and the data-driven, whole-step G02_MCC_network module.

Submodules

Module

Data objects

Main responsibility

G01_MCC

Particle arrays par(1:6,1:npmax), cross-section tables, background neutral density

Sample collisions with the null-collision method, update particle velocities, and create electron/ion particles and source terms for ionization events.

G02_MCC_network

Versioned CSV model packages, particle and background states, outcomes and source terms

Process a whole PIC step with two- and three-body channels, C++ interfaces and a zero-dimensional collision-box validation case.

Data and Call Boundaries

  • G01 assumes uniform energy spacing and uses MPI_Allreduce in its collision routines.

  • G02’s C++20 core builds independently with optional MPI/OpenMP and explicit model units and states.

  • Both leave pushing and boundary handling to the caller. G02’s bundled data are synthetic and cannot support scientific conclusions.

  • tests/009_collision covers the G01 loader and G02 unit, statistical and collision-box validation.

Documentation Layout

Start with the G02 module page and follow MCC basics → the implementation → the collision box. The example section retains commands, plot explanations and pass criteria.

See the module pages for formulas, interfaces and limits, and the 009_collision test overview for G02’s collision-box validation case.