SYNSPEC 输入输出文件完整文档
概述
SYNSPEC 是光谱合成程序,使用 TLUSTY 计算的大气模型计算理论光谱。
本文档记录 SYNSPEC 所有文件单元的用途、格式和内容。
相关文档: TLUSTY I/O 文件见 docs/TLUSTY_IO_FILES.md
第一部分:核心输入/输出
| 单元号 |
文件名 |
用途 |
方向 |
格式 |
说明 |
| 5 |
stdin |
主输入 |
输入 |
格式化 |
fort.55.lin 或 fort.55.con |
| 6 |
stdout |
标准输出 |
输出 |
格式化 |
进度和诊断信息 |
| 7 |
fort.7 |
光谱输出 |
输出 |
格式化 |
计算的谱 flux |
| 8 |
fort.8 / bfactors |
模型输入 |
输入 |
格式化 |
大气模型或 NLTE 系数 |
第二部分:谱线数据文件
| 单元号 |
文件名 |
用途 |
方向 |
格式 |
说明 |
| 3 |
fort.3 |
分子线列表 |
输入 |
格式化 |
分子谱线列表文件名 |
| 11 |
fort.11 |
Kurucz 线输出 |
输出 |
格式化 |
谱线数据输出 |
| 12 |
fort.12 |
二进制光谱 |
输出 |
格式化 |
谱线数据(二进制/格式化) |
| 14 |
fort.14 |
调试输出 |
输出 |
格式化 |
详细调试信息 |
| 17 |
fort.17 |
谱线选择 |
输出 |
格式化 |
选中的谱线列表 |
| 19 |
fort.19 |
原子线列表 |
输入 |
格式化 |
默认原子谱线列表 |
第三部分:轮廓/加宽文件
| 单元号 |
文件名 |
用途 |
方向 |
格式 |
说明 |
| 50 |
fort.50 |
Stark 轮廓 |
输出 |
格式化 |
氢 Stark 加宽数据 |
| 56 |
fort.56 |
He 轮廓 |
输出 |
格式化 |
氦线轮廓数据 |
| 57 |
fort.57 |
分子线 |
输入 |
格式化 |
分子谱线列表 |
第四部分:控制/诊断文件
| 单元号 |
文件名 |
用途 |
方向 |
格式 |
说明 |
| 4 |
fort.4 |
参数文件 |
输入 |
格式化 |
非标准参数文件 (NST) |
| 55 |
fort.55.lin/.con |
输入参数 |
输入 |
格式化 |
谱线/连续谱计算参数 |
| 69 |
fort.69 |
计时 |
输出 |
格式化 |
计算时间统计 |
| 84 |
fort.84 |
参数值 |
I/O |
格式化 |
优化参数值 |
| 95 |
fort.95 |
线标识 |
输出 |
格式化 |
谱线标识信息 |
第五部分:原子数据文件
| 文件名 |
用途 |
说明 |
./data/hydprf.dat |
氢线轮廓 |
H I Stark 加宽轮廓 |
./data/he1prf.dat |
He I 轮廓 |
He I 线轮廓数据 |
./data/he2prf.dat |
He II 轮廓 |
He II 线轮廓数据 |
./data/h1.dat |
H I 能级 |
氢原子能级数据 |
./data/he1.dat |
He I 能级 |
中性氦能级数据 |
./data/he2.dat |
He II 能级 |
氦离子能级数据 |
bfactors |
NLTE 系数 |
NLTE 出发系数(替代 fort.8) |
RBF.DAT |
辐射场边界 |
辐射 bracketing 数据 |
第六部分:文件格式详解
6.1 fort.55.lin (谱线计算输入)
! Line 1: IFREQ=0, NFREQ, INLTE
0 50 0
! Line 2: IHYDPR, IHE1PR, IHE2PR (轮廓开关)
1 0 0 0
! Line 3: 不透明度开关
0 0 0 0 0
! Line 4: 其他开关
1 1 0 0 0
! Line 5: 分子开关
0 0 0
! Line 6: 波长范围和步长
20 100000 10 0 0.0001 4
! Line 7-8: 角度/通量选项
0 0
6.2 fort.55.con (连续谱计算输入)
! 与 fort.55.lin 结构相同,但 IFREQ=0 表示连续谱
0 50 1
1 0 0 0
...
6.3 fort.7 (光谱输出)
! 波长 flux
3500.00 1.234E+14
3501.00 1.235E+14
...
6.4 fort.8 / bfactors (模型输入)
与 TLUSTY fort.7 格式相同,包含:
- 深度点数和参数
- 质量深度数组
- 温度、电子密度、质量密度、布居数
第七部分:有 I/O 的模块分析
| 模块 |
主要 I/O 操作 |
复杂度 |
| START |
读取 fort.55 参数 |
中 |
| INIBL0 |
初始化输入 |
中 |
| NSTPAR |
非标准参数 |
中 |
| HYDINI |
氢线轮廓 |
低 |
| HE1INI |
He I 轮廓 |
低 |
| HE2INI |
He II 轮廓 |
低 |
| INPBF |
读取 bfactors |
低 |
| MOLEQ |
分子线列表 |
中 |
| OPDATA |
不透明度数据 |
低 |
| RDATA |
原子数据 |
低 |
| SIGAVS |
Stark 数据 |
低 |
第八部分:重构优先级
高优先级
| 文件 |
单元 |
用途 |
| fort.55.lin |
5 |
谱线计算参数 |
| fort.55.con |
5 |
连续谱计算参数 |
| fort.7 |
7 |
光谱输出 |
| fort.8 |
8 |
模型输入 |
中优先级
| 文件 |
单元 |
用途 |
| fort.11 |
11 |
Kurucz 线输出 |
| fort.12 |
12 |
二进制光谱 |
| fort.17 |
17 |
谱线选择 |
低优先级
| 文件 |
单元 |
用途 |
| fort.14 |
14 |
调试 |
| fort.50 |
50 |
Stark 轮廓 |
| fort.56 |
56 |
He 轮廓 |
| fort.69 |
69 |
计时 |
| fort.95 |
95 |
线标识 |
附录:测试文件清单 (tests/synspec/hhe/)
| 文件 |
大小 |
说明 |
| fort.55.lin |
231 B |
谱线计算参数 |
| fort.55.con |
229 B |
连续谱计算参数 |
| fort.7 |
56 B |
光谱输出 |
| fort.8 |
45 KB |
模型输入 |
| fort.11 |
307 B |
Kurucz 线 |
| fort.12 |
2.4 KB |
二进制光谱 |
| fort.14 |
6.8 KB |
调试输出 |
| fort.17 |
56 B |
谱线选择 |
| fort.57 |
0 B |
分子线(空) |
| fort.69 |
37 B |
计时 |
| fort.84 |
352 B |
参数值 |
| fort.95 |
1.6 KB |
线标识 |