AORSA关键文件及参数解释
AORSA
全波代码 AORSA 被用来验证射线追踪技术。AORSA 是一种全波代码,它对于所有拉莫尔半径(Larmor radius
)的阶数都是有效的,并且能够解析任意的离子回旋谐波。拉莫尔半径是带电粒子在磁场中做圆周运动的半径,离子回旋谐波与等离子体中离子在磁场中的运动有关。AORSA 能够更全面地考虑等离子体的物理特性,从而对射线追踪技术的预测结果进行验证。
源代码地址: https://github.com/ORNL-Fusion/aorsa
目录
- AORSA
- 一、AORSA 的输入输出及源码目录结构
- 输入文件(Inputs)
- ✅EXAMPLE
- 输出文件(Outputs)
- ✅EXAMPLE
- 源码目录结构
- 二、aorsa2d.in
- 参数说明表
- *未使用的参数列表
- ✅ 示例配置文件(DIID-helicon 为例)
- &aorsa2din namelist
- 🧮当前配置说明表
- &State namelist
- 🧮当前配置说明表
- ※ 补充说明
一、AORSA 的输入输出及源码目录结构
输入文件(Inputs)
-
ZTABLE.TXT
– 等离子体色散函数(Plasma Dispersion Function
)的数值查找表。 -
grfont.dat
– 用于 AORSA 和 CQL3D 的图形显示。 -
Ztable
– 另一个等离子体色散函数的数值查找表(可能和ZTABLE.TXT
相同或不同,视情况而定)。 -
geqdsk
– 托卡马克平衡数据的EFIT G-EQDSK
文件,其具体文件名在aorsa2d.in
中指定。 -
⭐
aorsa2d.in
– fortran namelist 文件,用于设置程序参数:
- 处理器配置:nprow, npcol – 处理器网格。通常设为相等。
nprow x npcol = nproc
,即提交作业时请求的总进程数。 - 剖面设置:
iprofile=3
表示双抛物线型,iprofile=5
表示STATE
块中的数值输入- 双抛物线选项(具体参数请参考相关文档或代码说明)
- 处理器配置:nprow, npcol – 处理器网格。通常设为相等。
✅EXAMPLE
DIID-helicon
案例的输入文件(图中的 g200201.00000
即为 eqdsk
磁平衡文件):
输出文件(Outputs)
-
out15
– 运行日志信息 -
log_aorsa2d
– 运行日志信息 -
⭐⭐⭐
VTK
格式输出文件(可用于Visit
、Paraview
或Mayavi
查看)——2D
和3D
图像Bql_avg_2D.vtk
,Cql_avg_2D.vtk
– 准线性扩散系数(可选输出,取决于标志位)E_kicks_2D.vtk
– 蒙特卡洛扰动场(可选输出,取决于标志位)Eb_spectrum.vtk
– 射频电场能量谱Poynting_2D.vtk
– 坡印廷矢量(电磁能流密度)Bfield_2D.vtk
– 磁场(可能是平衡磁场或射频磁场)Efield_2D.vtk
– 射频电场capd.vtk
– 色散关系D(k,x)
的等高线图
-
⭐
Postscript
格式图像输出(使用PGPLOT
生成)aorsa2d.ps
– 主要输出文件,包含1D
和2D
场强与功率图
曲线颜色对应不同粒子种类:【电子:红色】;【离子:青色(主成分)、蓝色、绿色、洋红、橙色、黄色(按aorsa2d.in
中定义的粒子顺序排列)】。- 第 p1 张幻灯片开始 –
Ztable
的等高线图 - 第 p15 张幻灯片开始 – 密度和温度剖面图
- 第 p80 张幻灯片开始 – 射频电场和电流的 α α α、 β β β、 b b b 分量的二维等高线图
- 第 p92 张幻灯片开始 – E + E_+ E+, E − E_- E−, E ∥ E_\parallel E∥ 的一维图;
J·E
和Wdot
(功率沉积)的二维等高线图 - 第 p111 张幻灯片开始 – 功率谱的一维和二维图(有助于收敛性测试)
- 第 p123 张幻灯片开始 –
E
各分量绝对值的二维图 - 第 p130 张幻灯片开始 –
Btor
(环向磁场)和Bpol
(极向磁场)的平衡态及dl/B
图 - 第 p133 张幻灯片开始 – 准线性、
J·E
和Wdot
功率结果的对比图
- 第 p1 张幻灯片开始 –
-
movie.ps
– 展示射频电场随时间变化的帧序列(时间谐波电影),用以显示相速度disper.ps
– 波的介电特性图: k ⊥ k_\perp k⊥ 分支、共振点位置等
-
eqdsk_setup.ps
– 显示从EFIT G-EQDSK
文件中提取的平衡态属性
✅EXAMPLE
DIID-helicon
案例(上框为 vtk
文件,下框为 ps
文件):
源码目录结构
src/
– AORSA 的源代码目录src/FFTPACK
,src/CQL3DSETUP
– AORSA 的依赖库源代码src/JAGERHP
– 专门用于低混杂波和奇数阶导数测试的 AORSA 版本src/SAVE\*
,src/NEW
,src/BACKUP
– AORSA 的其他版本(备份或开发分支)
二、aorsa2d.in
fortran namelist 文件,用于设置程序参数。类型:CHARACTER
(字符串)、REAL
(实数)、INTEGER
(整数)、LOGICAL
(逻辑型)、PARAMETER
(常数)。下为各个参数及其描述。
参数说明表
变量名 | 类型 | 含义 | 默认值/单位 |
---|---|---|---|
eqdsk | CHARACTER | 平衡数据文件名(EQDSK 格式) | 'g1080408021.txt' |
netCDF_file1 | CHARACTER | 第一个 CQL3D 分布函数文件名 | 'phillips_nstx3.5.2.nc' |
netCDF_file2 | CHARACTER | 第二个 CQL3D 分布函数文件名 | 'phillips_nstx3.5.2.nc' |
root | CHARACTER | 模式求和方式:'none' (所有模式)、'fast' (快波附近)、'slow' (慢波附近) | 'none' |
xkx_ono | REAL | 绘制 Ono 色散关系时的 kx 值 (单位:m⁻¹ ) | -30.0 |
xky_ono | REAL | 绘制 Ono 色散关系时的 ky 值 (单位:m⁻¹ ) | 0.0 |
nstrap | INTEGER | 天线中电流带的数量 | 4 |
scrape | REAL | 刮削层长度(用于数值剖面,iprofile=5 ) | 100.0 (rho 单位) |
nmin | REAL | 刮削层中的最小电子密度限制 | 1.0e+18 m⁻³ |
Temin | REAL | 刮削层中的最低温度限制(单位:keV ) | 0.015 keV |
rhomax | REAL | rho 网格的最大值 | 1.0 |
xlt | REAL | 电流带宽度(单位:米) | 0.2 m (20 cm ) |
wd | REAL | 天线单元之间的中心距离(单位:米) | 0.5 m (50 cm ) |
enorm_factor | REAL | 场强归一化因子:若 >0 ,则 AORSA 的 enorm = factor × 最大能量 | 0.0 |
xkperp_cutoff | REAL | xkperp 截止分数,高于该值增强电子电导以抑制噪声 | 0.75 |
damping | REAL | 阻尼增强因子,应用于 xkperp_cutoff 以上区域 | 0.0 |
taue | REAL | 电子能量扩散时间,用于流驱动计算 | 0.05 s (50 ms ) |
theta_ant | REAL | 天线与垂直方向的角度 | 0.0° |
eslowev | REAL | 慢波截止能量 | 3.5e+6 eV |
amu_slo | REAL | 慢波离子质量(相对于氢原子) | 4.0 |
z_slo | REAL | 慢波离子电荷数 | 2.0 |
eta_slo | REAL | 慢波离子浓度与电子浓度的比值 | 0.0 |
xnuomi | REAL | 用于等离子体介电常数中的离子碰撞率 | 0.0 s⁻¹ |
xnuome | REAL | 用于等离子体介电常数中的电子碰撞率 | 0.0 s⁻¹ |
xnuead | REAL | 电子的附加经验碰撞频率(单位:s⁻¹ ) | 0.0 |
xnu1ad | REAL | 主要离子的附加经验碰撞频率(单位:s⁻¹ ) | 0.0 |
xnu2ad | REAL | 次要离子的附加经验碰撞频率(单位:s⁻¹ ) | 0.0 |
rant | REAL | 天线的大半径(若为 0.0 ,则 psiant = 0.95 ) | 0.0 m |
antang | REAL | 天线带与垂直方向的夹角(单位:度) | 0.0° |
dthetant0 | REAL | 天线角度变化范围(初始) | 40.0° |
dpsiant0 | REAL | 天线 psi 范围变化步长 | 0.05 |
antlen | REAL | 天线长度 | 1.0 m |
antlc | REAL | 沿天线传播的常数 = 光速 / 相速度 | 0.0001 |
psilim | REAL | 等离子体边界 psi 值 | 0.99 |
psimask | REAL | 屏蔽 psi 值 | 1.05 |
psiant | REAL | 天线所在位置的 psi 值 | 0.95 |
psimol | REAL | 若不等于 1.0 ,则使用 molifier 对剖面进行修正 | 1.0 |
psipne | REAL | 电子密度剖面使用的 psi 值 | 0.50 |
psipte | REAL | 电子温度剖面使用的 psi 值 | 0.30 |
psipti1-6 | REAL | 各种离子温度剖面使用的 psi 值 | 0.30 |
yant | REAL | 天线在 Z 方向的位置(单位:米) | 0.0 m |
te0 | REAL | 中心电子温度(单位:eV ) | 4290 eV |
ti0 , ti02-06 | REAL | 中心离子温度(单位:eV ) | 7070 eV |
epszet | REAL | Z 函数计算的误差容限(用于色散计算) | 1.0e-7 |
delta0 | REAL | 伯恩斯坦波的数值阻尼因子 | 0.0 |
xnwall | REAL | 放置在最后网格点上的金属密度 | 0.0 |
amu1 , amu2 | REAL | 离子质量(相对于氢原子) | 2.0 , 1.0 |
z1 , z2 | REAL | 离子电荷数(相对于氢原子) | 1.0 , 1.0 |
eta | REAL | 次要离子密度与电子密度的比值 | 0.0 |
b0 | REAL | x=0 处的磁场强度(单位:特斯拉) | 2.08 T |
q0 | REAL | 轴上反旋转剪切值 | 1.0 |
rt | REAL | 托卡马克装置的大半径 | 1.68 m |
ekappa | REAL | 纵向拉伸(elongation ) | 2.0 |
rwleft , rwright | REAL | 左右导电壁的大半径 | 0.0 m |
ytop , ybottom | REAL | 上下导电壁的垂直位置 | 0.0 m |
ymax | REAL | 垂直方向最大半径(默认为 awallx ) | 0.0 m |
freqcy | REAL | 射频频率(单位:Hz ) | 3.2e+7 Hz (32 MHz ) |
alim | REAL | 限流器位置 | 100.0 |
grad | REAL | 是否包含梯度项:0 忽略,1 包含 | 0.0 |
signbz | REAL | Bz 符号 | 1.0 |
xn0 | REAL | x=0 处的电子密度 | 3.11e+19 m⁻³ |
xn2 , xn3-6 | REAL | 各类离子密度 | 0.0 |
xnslo | REAL | 慢波离子密度 | 0.0 |
curdnx , curdny , curdnz | REAL | 天线在 x/y/z 方向上的电流密度(单位:安/米托卡马克长度) | 1.0 A/m |
prfin | REAL | 输入的总射频功率 | 0.0 W |
xleft | REAL | 能量积分左边界 | -0.7 m |
xright | REAL | 能量积分右边界 | 0.7 m |
qavg0 | REAL | 轴上的平均旋转剪切值 | 1.0 |
xnlim , xn2lim-6lim , xnslolim | REAL | 刮削层中的电子/离子密度 | 0.0 |
telim | REAL | 刮削层中的电子温度(x > aplasm ) | 0.0 (eV ) |
tilim | REAL | 刮削层中的离子温度(x > aplasm ) | 0.0 (eV ) |
ti2lim | REAL | 第2种离子在刮削层中的温度 | 0.0 (eV ) |
ti3lim | REAL | 第3种离子在刮削层中的温度 | 0.0 (eV ) |
ti4lim | REAL | 第4种离子在刮削层中的温度 | 0.0 (eV ) |
ti5lim | REAL | 第5种离子在刮削层中的温度 | 0.0 (eV ) |
ti6lim | REAL | 第6种离子在刮削层中的温度 | 0.0 (eV ) |
amu3 | REAL | 第3种离子质量与氢原子质量之比 | 12.0 |
z3 | REAL | 第3种离子电荷与氢原子电荷之比 | 6.0 |
eta3 | REAL | 第3种离子密度与电子密度的比值 | 0.0 |
xnu3ad | REAL | 第3种离子的附加经验碰撞频率 | 0.0 |
amu4 | REAL | 第4种离子质量与氢原子质量之比 | 12.0 |
z4 | REAL | 第4种离子电荷与氢原子电荷之比 | 6.0 |
eta4 | REAL | 第4种离子密度与电子密度的比值 | 0.0 |
xnu4ad | REAL | 第4种离子的附加经验碰撞频率 | 0.0 |
amu5 | REAL | 第5种离子质量与氢原子质量之比 | 12.0 |
z5 | REAL | 第5种离子电荷与氢原子电荷之比 | 6.0 |
eta5 | REAL | 第5种离子密度与电子密度的比值 | 0.0 |
xnu5ad | REAL | 第5种离子的附加经验碰撞频率 | 0.0 |
amu6 | REAL | 第6种离子质量与氢原子质量之比 | 12.0 |
z6 | REAL | 第6种离子电荷与氢原子电荷之比 | 6.0 |
eta6 | REAL | 第6种离子密度与电子密度的比值 | 0.0 |
xnu6ad | REAL | 第6种离子的附加经验碰撞频率 | 0.0 |
zeffcd | REAL | Ehst-Karney 电流驱动计算的有效电荷数 | 2.5 |
rzoom1 | REAL | wdot 计算左侧的 R 值 | 0.0 m |
rzoom2 | REAL | wdot 计算右侧的 R 值 | 0.0 m |
yzoom1 | REAL | wdot 计算底部的 Y 值 | 0.0 m |
yzoom2 | REAL | wdot 计算顶部的 Y 值 | 0.0 m |
ydisp | REAL | 绘制 D(x, kx) 等高线时的 y 值 | 0.0 m |
xkydisp | REAL | 绘制 D(x, kx) 等高线时的 ky 值 (单位:m⁻¹ ) | 0.0 m⁻¹ |
dfquotient | REAL*4 | 如果不等于 0 ,只绘制一个等高线 df / dfquotient | 0.0 |
rmin_zoom | REAL*4 | 边缘密度图的最小 R 值 | 2.15 |
rmax_zoom | REAL*4 | 边缘密度图的最大 R 值 | 2.35 |
yplot | REAL*4 | 慢波色散图的 y 截取值 | 0.05 |
alphan , …, alphan_slo | REAL | 各类粒子密度剖面的 α α α 参数 | 1.0 |
alphate , alphati , …, alphati6 | REAL | 各类粒子温度剖面的 α α α 参数 | 1.0 |
betan , …, betan_slo | REAL | 各类粒子密度剖面的 β β β 参数 | 2.0 |
betate , betati , …, betati6 | REAL | 各类粒子温度剖面的 β β β 参数 | 2.0 |
version_number | INTEGER | AORSA 版本号 | 24 |
n_prof_flux | INTEGER | 决定剖面是相对于环向还是极向磁通量 | 0 |
upshift | INTEGER | 上变频开关:1 开启,0 关闭 | 1 |
odd_order | INTEGER | 是否包含奇数阶导数 | 0 |
nsmooth | INTEGER | 平滑次数 | 4 |
eqdsk_special | INTEGER | EQDSK 文件类型标志:0 正常,非 0 特殊 | 0 |
nphi_sum_only | LOGICAL | 是否仅对模式求和而不运行 AORSA | .false. |
anti_alias | LOGICAL | 是否启用反走样滤波器 | .false. |
use_new_wdot | LOGICAL | 是否使用新的 wdote (包含共振和非共振项) | .false. |
use_no_damp | LOGICAL | 是否关闭功率计算中的人工阻尼 | .false. |
read_solution | LOGICAL | 是否从文件读取场解而不是使用 Scalapack 求解 | .false. |
plot_only | LOGICAL | 是否仅执行绘图而不运行 AORSA | .false. |
curved_ant | LOGICAL | 天线是否跟随磁面(默认为真) | .true. |
norm | INTEGER | 归一化方式:1 按 jdote ,2 按 wdot ,3 按 wdot_ql | 1 |
z2_electron | INTEGER | 电子 Z2 函数使用方式:0 原始函数(默认),1 使用 l=0 表格,2 使用傅里叶展开 | 0 |
i_write | INTEGER | 是否写入 4D ORBIT_RF 文件:0 不写入(默认),非 0 写入 | 0 |
n_bin | INTEGER | 分箱数 | 2 |
iql | INTEGER | 未详细说明 | 1 |
i_antenna | INTEGER | 天线模型选择:0 高斯电流,1 c o s ( k y ∗ y ) cos(ky*y) cos(ky∗y)(默认) | 1 |
nuper | INTEGER | 超级粒子数量(垂直方向) | 65 |
nupar | INTEGER | 平行方向超级粒子数量 | 129 |
nkperp | INTEGER | 在 Lee 插值版本中使用的 k ⊥ k_\perp k⊥ 数量:默认 201 ;若为 0 则不插值 | 201 |
nzeta_wdote | INTEGER | 电子 wdot 计算网格点数:0 不计算,1 不插值,≥2 插值 | 51 |
nzeta_wdoti | INTEGER | 离子 wdot 计算网格点数:0 不计算,1 不插值,≥2 插值 | 51 |
i_sav , j_sav | INTEGER | 保存索引变量 | 0 |
i_sav1 , j_sav1 | INTEGER | 保存索引变量 | 0 |
i_sav2 , j_sav2 | INTEGER | 保存索引变量 | 0 |
isolve | INTEGER | 是否计算波解:非 0 计算(默认),0 从文件读取 | 1 |
ftrap | INTEGER | 是否包含捕获粒子对电流驱动的影响:0 无,非 0 有(默认) | 1 |
nnode_local | INTEGER | 局部 Wdot 计算使用的局部傅里叶模数量:≤0 不计算,>0 计算 | 0 |
nnode_overlap | INTEGER | 重叠点数量 | 0 |
iprofile | INTEGER | 密度/温度剖面形式:1 高斯,2 抛物线,3 ( 1 − ρ β ) α (1-ρ^β)^α (1−ρβ)α(默认),5 数值剖面 | 3 |
nboundary | INTEGER | 边界类型:1 磁面边界(默认),0 方形边界 | 1 |
nprow , npcol | INTEGER | MPI 进程网格行列数 | 8, 8 |
nwdot | INTEGER | Wdot 和流计算中使用的径向模态数量 | 0 |
lmax | INTEGER | 离子电导率中保留的最高阶贝塞尔函数 | 5 |
lmaxe | INTEGER | 电子电导率中保留的最高阶贝塞尔函数 | 1 |
ibessel | INTEGER | 使用的贝塞尔函数类型:0 复数,1 实数(默认),2 二阶展开 | 1 |
inu | INTEGER | 是否考虑真实碰撞:0 忽略 | 0 |
iprint | INTEGER | 打印控制:1 不打印 fields_local (默认),28 打印 | 1 |
igeom | INTEGER | 磁面几何类型:2 Solovev ,5 EQDSK (默认) | 5 |
iqprof | INTEGER | q 剖面比例关系:1 与密度成正比(默认),2 与 密度 \sqrt{密度} 密度 成正比 | 1 |
isigma | INTEGER | 使用冷等离子体或热等离子体电导率:0 冷,1 热(默认) | 1 |
nzfun | INTEGER | Z 函数类型:0 简单 Z 函数,1 Brambilla 广义 Z 函数(默认),2 Smithe 数值积分,3 Smithe 查表 | 1 |
idiag , jdiag | INTEGER | 诊断相关参数 | 5, 4 |
ndiste | INTEGER | 电子分布函数类型:0 Maxwellian ,1 非 Maxwellian | 0 |
ndisti1..6 | INTEGER | 各种离子分布函数类型:0 Maxwellian ,1 非 Maxwellian | 0 |
nmodesx | INTEGER | x 方向使用的模态数量 | 128 |
nmodesy | INTEGER | y 方向使用的模态数量 | 128 |
nmodeslb | INTEGER | 沿磁力线方向使用的模态数量 | 256 |
nphi_number | INTEGER | nphi_array 中 nphi 的数量 | 10 |
nphimx | PARAMETER | nphi_array 的最大维度 | 200 |
nphi_array(nphimx) | INTEGER | 包含 nphi 值的数组 | 0 |
nphasemx | PARAMETER | phase_array 的最大长度 | 12 |
phase_array(nphasemx) | REAL | 每个天线带相位列表 | 0.0 |
*未使用的参数列表
变量名 | 类型 | 默认值/单位 |
---|---|---|
xwall | REAL | 0.0 |
aplasm | REAL | 0.7 m |
flat | REAL | 0.0 |
b1rat , b2rat | REAL | 0.7 , 1.3 |
xnuabs | REAL | 0.0 |
xbnch | REAL | 0.0 |
dfreq | REAL | 0.0 |
dkz | REAL | 0.0 |
xnudip | REAL | 2.5 |
adip | REAL | 0.0 |
efold | REAL | 0.0 |
xdelta | REAL | 0.55 |
wdelta | REAL | 0.0 |
xdelt2 | REAL | -0.07 |
wdelt2 | REAL | 0.0 |
iexact | INTEGER | 1 |
iroot | INTEGER | 2 |
iequat | INTEGER | 1 |
iqx | INTEGER | 4 |
iez | INTEGER | 0 |
nstep | INTEGER | 16 |
nabs | INTEGER | 2 |
iabsorb | INTEGER | 2 |
itemp | INTEGER | 0 |
nfreqm | INTEGER | 1 |
nkzm | INTEGER | 1 |
idens | INTEGER | 0 |
ibackground | INTEGER | 1 |
izfunc | INTEGER | 未定义 |
✅ 示例配置文件(DIID-helicon 为例)
所含的所有粒子种类:electrons
电子( e e e),deuterium
氘离子( 1 2 H / D _1^2H/D 12H/D),hydrogen
氢离子( 1 1 H / p _1^1H/p 11H/p),beam deuterons
束流氘离子,carbon
碳离子( 6 12 C _6^{12}C 612C)。
&aorsa2din namelist
主控制参数列表
&aorsa2din! 📌基本设置:! 启用新的 wdot 模型,用于计算波动能量源项。use_new_wdot = .true.,! 使用电子响应函数的替代版本(例如使用 l=0 表格),具体取决于实现z2_electron = 1,! 不使用 zeta(平行波数)积分来计算电子/离子的能量沉积nzeta_wdote = 0,nzeta_wdoti = 0,! 电子和离子的碰撞频率(单位:rad/s)xnuome = 0.01,xnuomi = 0.01,! 频率上移因子(可能用于补偿多普勒效应)upshift = 1,! 使用弯曲天线模型curved_ant = .true.,! 绘图区域在 y 方向的范围上限yplot = .05,! 最大归一化半径(通常为 1)rhomax = 1.0,! 📌 天线参数:! 天线位置和垂直范围定义rwright = 2.45,ytop = 1.18,ybottom = -1.25,! 边界处理方式(0 表示无刮削边界)nboundary = 0,! scrape 表示边界附近吸收层厚度scrape = 0.08,! 最小密度限制,防止数值不稳定nmin = 2e+18,! 数值稳定性参数delta0 = 1.0e-05,! 波矢量 k 在 x 和 y 方向的初始估计值(用于迭代求解)xkx_ono = 7.0,xky_ono = 5.0,! 天线偏移量及对应的波矢量ydisp = 0.05,xkydisp = 5.0,! 截断垂直波数,用于滤除高频噪声xkperp_cutoff = 0.85,! 阻尼系数,用于稳定求解damping = 500.0,! 使用第 5 种等离子体剖面模型iprofile = 5,! 使用一个通量面作为剖面基准n_prof_flux = 1,! 磁平衡文件(EQDSK 格式)eqdsk = 'g200201.00000',! NetCDF 文件,用于读取其他等离子体参数(如密度、温度分布)netCDF_file2='DIII_NB_FW_0th.max.nc',! 模拟在 x 和 y 方向上使用的模态数量,决定分辨率nmodesx = 16,nmodesy = 16,! 并行计算行列分组(MPI 进程划分)nprow = 1,npcol = 1,! 使用 1 个 toroidal 模式(φ模式),编号为 -94nphi_number = 1,nphi_array = -94, ! 功率输入(W)、频率(Hz)、天线长度(m)、相位扰动、天线电感、半径、类型、垂直位置等prfin = 35.601e+06,freqcy = 476.0E+06,antlen = 0.375,dpsiant0 = 0.03,antlc = 4.4366,rant = 2.38,i_antenna= 0,yant = 0.45,! 最大极角模数lmax = 47,! 有效电荷(Zeff)zeffcd = 1.852, ! 电子密度和温度剖面参数(指数分布)xn0 = 2.6E+19,xnlim = 1.0E+18,alphan = 0.15,betan = 2.0,te0 = 6.55E+03,telim = 0.1e+03,alphate = 2.0,betate = 2.0,! ndisti1~ndisti4 是多个离子种类的设置:! 氘离子(deuterium)ndisti1 = 0, amu1 = 2.0,z1 = 1.0, ti0 = 4.9E+03,tilim = 0.2e+03,alphati = 2.0,betati = 2.0,! 氢离子(hydrogen)ndisti2 = 0, amu2 = 1.0,z2 = 1.0,xn2 = 0.0e+18,xn2lim = 0.0e+18,alphan2 = 0.15, betan2 = 2.0,ti02 = 4.9E+03,ti2lim = 0.2E+03,alphati2 = 2.0,betati2 = 2.0, ! 束流氘离子(beam deuterons)ndisti3 = 0, amu3 = 2.0,z3 = 1.0,xn3 = 0.0e+18,xn3lim = 0.0e+18,alphan3 = 0.15, betan3 = 2.0,ti03 = 33.E+03,ti3lim = 33.E+03,alphati3 = 2.0,betati3 = 2.0, ! 碳离子(carbon)ndisti4 = 0, amu4 = 12.0,z4 = 6.0,xn4 = 0.0e+18,xn4lim = 0.0e+18,alphan4 = 0.15, betan4 = 2.0,ti04 = 33.E+03,ti4lim = 33.E+03,alphati4 = 2.0,betati4 = 2.0, /
🧮当前配置说明表
变量名 | 当前值 | 解释 |
---|---|---|
use_new_wdot | .true. | 使用新的 wdot 模型计算波动能量源项 |
z2_electron | 1 | 电子响应函数类型:1 表示使用 l=0 表格 |
nzeta_wdote , nzeta_wdoti | 0 | 用于电子/l离子能量沉积积分的 zeta 点数,设为 0 表示不使用 |
xnuome , xnuomi | 0.01 | 电子/离子碰撞频率(单位:rad/s ) |
upshift | 1 | 频率上移因子,可能用于补偿多普勒效应 |
curved_ant | .true. | 使用弯曲天线模型 |
yplot | .05 | 绘图区域在 y 方向上的上限 |
rhomax | 1.0 | 最大归一化半径(通常为 1) |
rwright | 2.45 | 天线位置的 R 坐标 |
ytop , ybottom | 1.18 , -1.25 | 天线上/下边界位置 |
nboundary | 0 | 边界处理方式:0 表示无刮削边界 |
scrape | 0.08 | 刮削层厚度 |
nmin | 2e+18 | 等离子体密度下限,防止数值不稳定 |
delta0 | 1.0e-05 | 数值稳定性参数 |
xkx_ono | 7.0 | 波矢量 kx 的初始估计值 |
xky_ono | 5.0 | 波矢量 ky 的初始估计值 |
ydisp | 0.05 | 天线偏移量 |
xkydisp | 5.0 | 对应于天线偏移的波矢量 ky |
xkperp_cutoff | 0.85 | 垂直波数截断阈值,用于滤除高频噪声 |
damping | 500.0 | 阻尼系数,用于稳定求解 |
iprofile | 5 | 等离子体剖面模型编号:使用第 5 种模型 |
n_prof_flux | 1 | 使用通量面数量作为剖面基准 |
eqdsk | 'g200201.00000' | 磁平衡文件名(EQDSK 格式) |
netCDF_file2 | 'DIII_NB_FW_0th.max.nc' | NetCDF 文件名,包含等离子体参数 |
nmodesx | 16 | x 方向模态数(决定分辨率) |
nmodesy | 16 | y 方向模态数 |
nprow , npcol | 1 | MPI 并行计算中进程行/列数 |
nphi_number | 1 | toroidal 模式(φ模式)的数量 |
nphi_array | -94 | toroidal 模式编号数组 |
prfin | 35.601e+06 | 输入功率(单位:W ) |
freqcy | 476.0E+06 | 射频波频率(单位:Hz ) |
antlen | 0.375 | 天线长度(单位:m ) |
dpsiant0 | 0.03 | 天线相位扰动 |
antlc | 4.4366 | 天线电感 |
rant | 2.38 | 天线半径 |
i_antenna | 0 | 天线模型选择:0 表示高斯电流,1 表示 c o s ( k y ∗ y ) cos(ky*y) cos(ky∗y) |
yant | 0.45 | 天线垂直位置 |
lmax | 47 | 最大极角模数(Legendre 模展开阶数) |
zeffcd | 1.852 | 有效电荷(Zeff ) |
xn0 | 2.6E+19 | 电子密度中心值(单位:m⁻³ ) |
xnlim | 1.0E+18 | 电子密度最小限制值 |
alphan | 0.15 | 电子密度剖面指数参数 α |
betan | 2.0 | 电子密度剖面指数参数 β |
te0 | 6.55E+03 | 电子温度中心值(单位:eV 或 keV) |
telim | 0.1e+03 | 电子温度最小限制值 |
alphate | 2.0 | 电子温度剖面指数参数 α |
betate | 2.0 | 电子温度剖面指数参数 β |
ndisti1 | 0 | 离子种类 1 的密度分布标志(0 表示关闭) |
amu1 | 2.0 | 离子种类 1 的原子质量(氘离子 = 2.0) |
z1 | 1.0 | 离子种类 1 的电荷数(氘离子 = 1.0) |
ti0 | 4.9E+03 | 离子种类 1 的温度中心值 |
tilim | 0.2e+03 | 离子种类 1 的温度最小限制值 |
alphati | 2.0 | 离子种类 1 的温度剖面 α |
betati | 2.0 | 离子种类 1 的温度剖面 β |
ndisti2 | 0 | 离子种类 2 的密度分布标志(氢离子 = 0) |
amu2 | 1.0 | 离子种类 2 的原子质量(氢离子 = 1.0) |
z2 | 1.0 | 离子种类 2 的电荷数(氢离子 = 1.0) |
xn2 | 0.0e+18 | 离子种类 2 的密度中心值 |
xn2lim | 0.0e+18 | 离子种类 2 的密度最小限制值 |
alphan2 | 0.15 | 离子种类 2 的密度剖面 α |
betan2 | 2.0 | 离子种类 2 的密度剖面 β |
ti02 | 4.9E+03 | 离子种类 2 的温度中心值 |
ti2lim | 0.2E+03 | 离子种类 2 的温度最小限制值 |
alphati2 | 2.0 | 离子种类 2 的温度剖面 α |
betati2 | 2.0 | 离子种类 2 的温度剖面 β |
ndisti3 | 0 | 离子种类 3 的密度分布标志(束流氘离子 = 0) |
amu3 | 2.0 | 离子种类 3 的原子质量(束流氘离子 = 2.0) |
z3 | 1.0 | 离子种类 3 的电荷数(束流氘离子 = 1.0) |
xn3 | 0.0e+18 | 离子种类 3 的密度中心值 |
xn3lim | 0.0e+18 | 离子种类 3 的密度最小限制值 |
alphan3 | 0.15 | 离子种类 3 的密度剖面 α |
betan3 | 2.0 | 离子种类 3 的密度剖面 β |
ti03 | 33.E+03 | 离子种类 3 的温度中心值 |
ti3lim | 33.E+03 | 离子种类 3 的温度最小限制值 |
alphati3 | 2.0 | 离子种类 3 的温度剖面 α |
betati3 | 2.0 | 离子种类 3 的温度剖面 β |
ndisti4 | 0 | 离子种类 4 的密度分布标志(碳离子 = 0) |
amu4 | 12.0 | 离子种类 4 的原子质量(碳离子 = 12.0) |
z4 | 6.0 | 离子种类 4 的电荷数(碳离子 = 6.0) |
xn4 | 0.0e+18 | 离子种类 4 的密度中心值 |
xn4lim | 0.0e+18 | 离子种类 4 的密度最小限制值 |
alphan4 | 0.15 | 离子种类 4 的密度剖面 α |
betan4 | 2.0 | 离子种类 4 的密度剖面 β |
ti04 | 33.E+03 | 离子种类 4 的温度中心值 |
ti4lim | 33.E+03 | 离子种类 4 的温度最小限制值 |
alphati4 | 2.0 | 离子种类 4 的温度剖面 α |
betati4 | 2.0 | 离子种类 4 的温度剖面 β |
&State namelist
等离子体状态数据(如密度、温度、磁场几何等)
&STATE S_T0 = 0.,S_T1 = 0.,! 📌 几何设置:! R-Z 网格范围,表示等离子体的模拟区域S_R_AXIS = 0.,S_Z_AXIS = 0., S_R0_MACH = 0.,S_Z0_MACH = 0.,S_R_MIN = 0.88,S_R_MAX = 2.475, S_Z_MIN = -1.3,S_Z_MAX = 1.3,! 物理上存在的粒子种类数(2 种:电子 + 氘)S_NSPEC = 2, ! 包括热离子在内的总粒子种类数(4 种)S_NSPEC_TH = 4, ! 所有粒子种类名称列表S_S_NAME = 'electrons', 'deuterium','hydrogen','beam deuterons','carbon' ! 碳离子通常是杂质粒子,可能用于计算辐射损失或有效电荷 Z_{eff} ,但它不一定直接参与主动力学过程,不计入主粒子种数! 每种粒子的电荷(C)S_Q_S = -1.60E-19, 1.60E-19, 1.60e-19, 1.60e-19, 1.60e-19, 2*0., ! 每种粒子的质量(kg)S_M_S = 9.11E-31, 3.34E-27, 1.67e-27, 3.34E-27, 2.01e-26, 2*0., ! 径向网格点数S_NRHO_N = 101,! 用于密度网格的归一化径向坐标(ρ ∈ [0, 1]) S_RHO_N_GRID = 0.0000E+00 1.0000E-02 2.0000E-02 3.0000E-02 4.0000E-025.0000E-02 6.0000E-02 7.0000E-02 8.0000E-02 9.0000E-021.0000E-01 1.1000E-01 1.2000E-01 1.3000E-01 1.4000E-011.5000E-01 1.6000E-01 1.7000E-01 1.8000E-01 1.9000E-012.0000E-01 2.1000E-01 2.2000E-01 2.3000E-01 2.4000E-012.5000E-01 2.6000E-01 2.7000E-01 2.8000E-01 2.9000E-013.0000E-01 3.1000E-01 3.2000E-01 3.3000E-01 3.4000E-013.5000E-01 3.6000E-01 3.7000E-01 3.8000E-01 3.9000E-014.0000E-01 4.1000E-01 4.2000E-01 4.3000E-01 4.4000E-014.5000E-01 4.6000E-01 4.7000E-01 4.8000E-01 4.9000E-015.0000E-01 5.1000E-01 5.2000E-01 5.3000E-01 5.4000E-015.5000E-01 5.6000E-01 5.7000E-01 5.8000E-01 5.9000E-016.0000E-01 6.1000E-01 6.2000E-01 6.3000E-01 6.4000E-016.5000E-01 6.6000E-01 6.7000E-01 6.8000E-01 6.9000E-017.0000E-01 7.1000E-01 7.2000E-01 7.3000E-01 7.4000E-017.5000E-01 7.6000E-01 7.7000E-01 7.8000E-01 7.9000E-018.0000E-01 8.1000E-01 8.2000E-01 8.3000E-01 8.4000E-018.5000E-01 8.6000E-01 8.7000E-01 8.8000E-01 8.9000E-019.0000E-01 9.1000E-01 9.2000E-01 9.3000E-01 9.4000E-019.5000E-01 9.6000E-01 9.7000E-01 9.8000E-01 9.9000E-011.0000E+0080*0.,! 每种粒子的密度分布(随 rho 变化)! 篇幅因素,下为简化写法S_N_S =e_n_0, e_n_1, ..., e_n_100, 80*0., ! 电子d_n_0, d_n_1, ..., d_n_100, 80*0., ! 氘离子h_n_0, h_n_1, ..., h_n_100, 80*0., ! 氢离子bd_n_0, ..., bd_n_100, 80*0., ! 束流氘离子c_n_0, ..., c_n_100, 262*0., ! 碳离子! 在归一化半径(ρ)上的有效电荷Zeff分布! Zeff 是衡量等离子体中杂质含量的一个指标,定义为:$Z_{eff}=\frac{\sum_{i}n_{i}Z_{i}^2}{\sum_{i}n_{i}Z_{i}}$! 高 Zeff 表示等离子体中含有较多高电荷数的杂质(如碳、钨),会影响波吸收和约束性能。! 在该案例中,Zeff 从芯部(约 1.9)到边界逐渐下降至约 2.0 左右,说明中心区域有较高杂质含量。S_ZEFF =1.9000E+00 1.8992E+00 1.8980E+00 1.8963E+00 1.8940E+001.8909E+00 1.8870E+00 1.8822E+00 1.8770E+00 1.8718E+001.8660E+00 1.8593E+00 1.8520E+00 1.8446E+00 1.8370E+001.8291E+00 1.8210E+00 1.8126E+00 1.8040E+00 1.7952E+001.7860E+00 1.7764E+00 1.7670E+00 1.7580E+00 1.7490E+001.7394E+00 1.7300E+00 1.7214E+00 1.7130E+00 1.7040E+001.6950E+00 1.6867E+00 1.6790E+00 1.6714E+00 1.6640E+001.6568E+00 1.6500E+00 1.6438E+00 1.6380E+00 1.6323E+001.6270E+00 1.6222E+00 1.6180E+00 1.6142E+00 1.6110E+001.6084E+00 1.6060E+00 1.6037E+00 1.6020E+00 1.6012E+001.6010E+00 1.6009E+00 1.6010E+00 1.6017E+00 1.6030E+001.6049E+00 1.6070E+00 1.6090E+00 1.6110E+00 1.6133E+001.6160E+00 1.6190E+00 1.6220E+00 1.6250E+00 1.6280E+001.6311E+00 1.6340E+00 1.6365E+00 1.6390E+00 1.6420E+001.6450E+00 1.6472E+00 1.6490E+00 1.6506E+00 1.6520E+001.6531E+00 1.6540E+00 1.6546E+00 1.6550E+00 1.6551E+001.6550E+00 1.6546E+00 1.6540E+00 1.6533E+00 1.6530E+001.6536E+00 1.6550E+00 1.6573E+00 1.6610E+00 1.6667E+001.6750E+00 1.6863E+00 1.7010E+00 1.7200E+00 1.7450E+001.7778E+00 1.8190E+00 1.8697E+00 1.9340E+00 2.0165E+002.1220E+00 80*0.,! 该参数用于存储杂质粒子的质量(kg)。S_M_IMPURITY = 181*0., !当前值全为 0,可能表示没有显式定义杂质种类,或者由其他输入文件(如 NetCDF)提供。若启用杂质建模,这里应填入不同杂质种类的质量数组。! 温度剖面使用的径向点数(101)S_NRHO_T = 101,! 温度分布的归一化径向坐标(ρ ∈ [0, 1])S_RHO_T_GRID = 0.0000E+00 1.0000E-02 2.0000E-02 3.0000E-02 4.0000E-025.0000E-02 6.0000E-02 7.0000E-02 8.0000E-02 9.0000E-021.0000E-01 1.1000E-01 1.2000E-01 1.3000E-01 1.4000E-011.5000E-01 1.6000E-01 1.7000E-01 1.8000E-01 1.9000E-012.0000E-01 2.1000E-01 2.2000E-01 2.3000E-01 2.4000E-012.5000E-01 2.6000E-01 2.7000E-01 2.8000E-01 2.9000E-013.0000E-01 3.1000E-01 3.2000E-01 3.3000E-01 3.4000E-013.5000E-01 3.6000E-01 3.7000E-01 3.8000E-01 3.9000E-014.0000E-01 4.1000E-01 4.2000E-01 4.3000E-01 4.4000E-014.5000E-01 4.6000E-01 4.7000E-01 4.8000E-01 4.9000E-015.0000E-01 5.1000E-01 5.2000E-01 5.3000E-01 5.4000E-015.5000E-01 5.6000E-01 5.7000E-01 5.8000E-01 5.9000E-016.0000E-01 6.1000E-01 6.2000E-01 6.3000E-01 6.4000E-016.5000E-01 6.6000E-01 6.7000E-01 6.8000E-01 6.9000E-017.0000E-01 7.1000E-01 7.2000E-01 7.3000E-01 7.4000E-017.5000E-01 7.6000E-01 7.7000E-01 7.8000E-01 7.9000E-018.0000E-01 8.1000E-01 8.2000E-01 8.3000E-01 8.4000E-018.5000E-01 8.6000E-01 8.7000E-01 8.8000E-01 8.9000E-019.0000E-01 9.1000E-01 9.2000E-01 9.3000E-01 9.4000E-019.5000E-01 9.6000E-01 9.7000E-01 9.8000E-01 9.9000E-011.0000E+0080*0., ! 注:这里的 80*0. 是 Fortran 数组填充语法,表示用 80 个 0 填充剩余空间。由于总长度为 181,前面已经写了 101 个值,所以补上 80 个零以满足数组长度要求。! 粒子温度分布(随 ρ 变化)! 篇幅因素,下为简化写法! 在该案例中,温度从芯部(高)向外逐渐降低(电子温度从 ~5.7 eV 降到 ~0.2 eV)S_T_S = e_temp_0, e_temp_1, ..., e_temp_100,80*0., ! 电子温度d_temp_0, d_temp_1, ..., d_temp_100,80*0., ! 氘离子温度h_temp_0, h_temp_1, ..., h_temp_100,80*0., ! 氢离子温度bd_temp_0, ..., bd_temp_100,80*0., ! 束流氘离子温度c_temp_0, ..., c_temp_100,262*0. ! 碳离子温度/
🧮当前配置说明表
模块 | 变量名 | 当前值 | 描述 |
---|---|---|---|
时间控制 | S_T0 , S_T1 | 0. , 0. | 模拟起始和结束时间(单位:秒) |
几何设置 | S_R_AXIS , S_Z_AXIS | 0. , 0. | 等离子体轴心的(R ,Z )坐标 |
S_R0_MACH , S_Z0_MACH | 0. , 0. | 机器中心的(R , Z )坐标 | |
S_R_MIN , S_R_MAX | 0.88 , 2.475 | 径向范围(R 方向,单位:米) | |
S_Z_MIN , S_Z_MAX | -1.3 , 1.3 | 垂直方向范围(Z 方向,单位:米) | |
粒子种类定义 | S_NSPEC | 2 | 物理上存在的粒子种类数(如电子 + 氘) |
S_NSPEC_TH | 4 (电子、氘离子、氢离子、束流氘离子) | 包括热离子在内的总粒子种类数(等离子体中主动参与波加热、碰撞、输运过程的粒子) | |
S_S_NAME | 'electrons', 'deuterium', 'hydrogen', 'beam deuterons', 'carbon' | 所有粒子种类名称列表 | |
S_Q_S | -1.60E-19, 1.60E-19, ... , 2*0. (7 个值) | 每种粒子的电荷(单位:C ) | |
S_M_S | 9.11E-31, 3.34E-27, ... , 2*0. (7 个值) | 每种粒子的质量(单位:kg ) | |
密度分布 | S_NRHO_N | 101 | 密度剖面对应的径向点数 |
S_RHO_N_GRID | 181 个属于 [ 0 , 1 ] [0,1] [0,1] 的 ρ \rho ρ 值 | 密度分布使用的归一化径向坐标数组 | |
S_N_S | 各粒子在不同 ρ ρ ρ 上的密度值,共 101 * 5 个实际值 + 80*4 + 260 个填充 0.0 值 | 每种粒子的密度分布(随 ρ ρ ρ 变化),单位:m⁻³ | |
温度分布 | S_NRHO_T | 101 | 温度剖面对应的径向点数 |
S_RHO_T_GRID | 同 S_RHO_N_GRID (101 个值 + 80 个填充 0.0 值) | 温度分布使用的归一化径向坐标数组 | |
S_T_S | 各粒子在不同 ρ ρ ρ 上的温度值,共 101 * 5 个实际值 + 80*4 + 260 个填充 0.0 值 | 粒子温度分布(随 ρ 变化),单位:eV 或 keV | |
杂质信息 | S_ZEFF | 数组,181 个值(101 个值 + 80 个填充 0.0 值) | 有效电荷 Z e f f Z_{eff} Zeff 分布,反映等离子体中杂质含量 |
S_M_IMPURITY | 181 个 0.0 | 杂质粒子质量数组(当前未启用或由外部提供) |
※ 补充说明
S_NSPEC_TH = 4
(总粒子种类数为 4),但
S_S_NAME
列表有 5 个粒子名称(多一个C
离子 ),
S_Q_S
和S_M_S
各有 7 个值(5
个值 +2
个0.0
值)。
- 在
S_S_NAME
中,碳离子通常是 杂质粒子,可能用于计算辐射损失、杂志输运或有效电荷 Z e f f Z_{eff} Zeff,但在波吸收/电流驱动等主要物理过程中,它可能被忽略,即它不一定直接参与主动力学过程,因此不计入主粒子总数; - 而对于
S_Q_S
和S_M_S
的 7 个值正好对应 5 个粒子 + 2 个填充 0:
序号 | 粒子种类 | 电荷(C) | 质量(kg) |
---|---|---|---|
1 | electrons | -1.60E-19 | 9.11E-31 |
2 | deuterium | 1.60E-19 | 3.34E-27 |
3 | hydrogen | 1.60E-19 | 1.67E-27 |
4 | beam deuterons | 1.60E-19 | 3.34E-27 |
5 | carbon | 1.60E-19 | 2.01E-26 |
6 | (未命名) | 0 | 0 |
7 | (未命名) | 0 | 0 |
- 出现这种情况的原因是:
- 固定数组大小,便于
Fortran
内存管理; - 兼容不同输入配置。使用
S_NSPEC_TH
控制实际使用的粒子数量,可以动态切换模拟复杂度。
- 固定数组大小,便于
📌结论:虽然
S_S_NAME
定义了 5 个粒子,但只有前 4 个参与主要物理建模;第 5 个(碳 C)用于辅助计算(如 Z e f f Z_{eff} Zeff),而S_Q_S
和S_M_S
的后 2 个位置是预留或填充。
@Date: 2025.6.14
@Author: zkinglin
(完)