SpectraRust/docs/file_tree.md
2026-03-25 18:28:13 +08:00

16 KiB
Raw Blame History

建议的新目录结构

src/tlusty/ ├── lib.rs │ ├── math/ # [17 模块] 纯数学工具(无物理依赖) │ ├── mod.rs │ ├── special/ # 特殊函数 │ │ ├── mod.rs │ │ ├── expint.rs # 指数积分 │ │ ├── erfcx.rs # 误差函数 │ │ ├── expo.rs # 安全指数函数 │ │ └── gauleg.rs # Gauss-Legendre 积分 │ ├── solvers/ # 方程求解器 │ │ ├── mod.rs │ │ ├── tridag.rs # 三对角矩阵 │ │ ├── lineqs.rs # 线性方程组 │ │ ├── minv3.rs # 3×3 矩阵求逆 │ │ ├── matinv.rs # 矩阵求逆 │ │ ├── cubic.rs # 三次方程 │ │ └── quartc.rs # 四次方程 │ ├── interpolate/ # 插值函数 │ │ ├── mod.rs │ │ ├── lagran.rs # Lagrange 插值 │ │ ├── yint.rs # 二次插值 │ │ ├── ylintp.rs # 线性插值 │ │ ├── interp.rs # 通用插值 │ │ ├── tabint.rs # 表格插值 │ │ └── locate.rs # 二分查找 │ └── utils/ # 其他数学工具 │ ├── mod.rs │ ├── indexx.rs # 索引排序 │ ├── laguer.rs # Laguerre 多项式 │ └── ubeta.rs # U(beta) 函数 │ ├── physics/ # [80+ 模块] 物理计算 │ ├── mod.rs │ │ │ ├── opacity/ # 不透明度计算 (13 模块) │ │ ├── mod.rs │ │ ├── opacf0.rs # 单深度点系数 │ │ ├── opacf1.rs # 单频率点系数 │ │ ├── opacfa.rs # 全深度点系数 │ │ ├── opacfd.rs # 系数及导数 │ │ ├── opacfl.rs # 频率/深度系数 │ │ ├── opadd.rs # 额外不透明度 │ │ ├── opadd0.rs # 附加源截面 │ │ ├── opahst.rs # 氢高能级参数 │ │ ├── opaini.rs # 初始化 │ │ ├── opctab.rs # 不透明度表 │ │ ├── opdata.rs # OP 数据读取 │ │ ├── opfrac.rs # OP 电离分数 │ │ └── traini.rs # 深度无关初始化 │ │ │ ├── cross_section/ # 截面计算 (25+ 模块) │ │ ├── mod.rs │ │ ├── photoion/ # 光电离截面 │ │ │ ├── mod.rs │ │ │ ├── cross.rs # 通用光电离 │ │ │ ├── verner.rs # Verner 截面 │ │ │ ├── vern16.rs # 硫离子 │ │ │ ├── vern18.rs # 氩离子 │ │ │ ├── vern20.rs # 钙离子 │ │ │ ├── vern26.rs # 铁离子 │ │ │ ├── topbas.rs # OP 截面 │ │ │ ├── sigk.rs # 光致电离 │ │ │ ├── bkhsgo.rs # K/L 壳层 │ │ │ ├── reiman.rs # Reilman-Manson │ │ │ ├── hephot.rs # He I │ │ │ ├── carbon.rs # 碳中性 │ │ │ └── ckoest.rs # Koester He I │ │ ├── bound_free/ # 束缚-自由 │ │ │ ├── mod.rs │ │ │ ├── sbfch.rs # CH 截面 │ │ │ ├── sbfhe1.rs # He I │ │ │ ├── sbfhmi.rs # H⁻ │ │ │ └── sbfoh.rs # OH │ │ ├── free_free/ # 自由-自由 │ │ │ ├── mod.rs │ │ │ ├── ffcros.rs # FF 截面 │ │ │ ├── sffhmi.rs # H⁻ FF │ │ │ └── h2minus.rs # H₂⁻ 不透明度 │ │ ├── gaunt/ # Gaunt 因子 │ │ │ ├── mod.rs │ │ │ ├── gaunt.rs # 氢 BF Gaunt │ │ │ ├── gfree.rs # FF Gaunt │ │ │ └── gntk.rs # 通用 Gaunt │ │ ├── cia/ # 碰撞诱导吸收 │ │ │ ├── mod.rs │ │ │ ├── cia_h2h.rs │ │ │ ├── cia_h2h2.rs │ │ │ ├── cia_h2he.rs │ │ │ └── cia_hhe.rs │ │ └── rayleigh/ # Rayleigh 散射 │ │ ├── mod.rs │ │ ├── rayleigh.rs │ │ └── rayset.rs │ │ │ ├── line_profile/ # 谱线轮廓 (18 模块) │ │ ├── mod.rs │ │ ├── voigt.rs # Voigt 轮廓 │ │ ├── voigte.rs # Voigt 近似 │ │ ├── profil.rs # 标准轮廓 │ │ ├── profsp.rs # 非标准轮廓 │ │ ├── stark/ # Stark 展宽 │ │ │ ├── mod.rs │ │ │ ├── stark0.rs │ │ │ ├── starka.rs │ │ │ ├── divstr.rs │ │ │ ├── inthyd.rs │ │ │ ├── intlem.rs │ │ │ ├── lemini.rs │ │ │ └── gomini.rs │ │ ├── broadening/ # 展宽机制 │ │ │ ├── mod.rs │ │ │ ├── dopgam.rs # Doppler/Voigt │ │ │ ├── gamsp.rs # 自定义展宽 │ │ │ ├── gami.rs # 微扰展宽 │ │ │ └── gvdw.rs # Van der Waals │ │ ├── quasimol/ # 准分子 │ │ │ ├── mod.rs │ │ │ ├── allard.rs │ │ │ ├── allardt.rs │ │ │ └── quasim.rs │ │ └── hydrogen/ # 氢线特殊处理 │ │ ├── mod.rs │ │ ├── lymlin.rs │ │ ├── ghydop.rs │ │ └── intxen.rs │ │ │ ├── collision/ # 碰撞过程 (13 模块) │ │ ├── mod.rs │ │ ├── rates/ # 碰撞速率 │ │ │ ├── mod.rs │ │ │ ├── colh.rs # 氢碰撞 │ │ │ ├── colhe.rs # 氦碰撞 │ │ │ ├── collhe.rs # 氦碰撞系数 │ │ │ ├── colis.rs # 其他物种 │ │ │ ├── butler.rs # Butler 碰撞激发 │ │ │ ├── ceh12.rs # Lyman-α │ │ │ ├── cheav.rs # He I 激发 │ │ │ └── cspec.rs # 碰撞强度 │ │ ├── ionization/ # 碰撞电离 │ │ │ ├── mod.rs │ │ │ ├── cion.rs │ │ │ ├── irc.rs │ │ │ └── szirc.rs │ │ ├── dielectronic/ # 双电子复合 │ │ │ ├── mod.rs │ │ │ ├── dielrc.rs │ │ │ └── dietot.rs │ │ └── charge_transfer/ # 电荷转移 │ │ ├── mod.rs │ │ └── ctdata.rs │ │ │ ├── radiative/ # 辐射转移 (15 模块) │ │ ├── mod.rs │ │ ├── rte/ # 辐射转移方程 │ │ │ ├── mod.rs │ │ │ ├── rteang.rs # 角度积分 │ │ │ ├── rtecf0.rs │ │ │ ├── rtecf1.rs │ │ │ ├── rtedf1.rs │ │ │ ├── rtedf2.rs │ │ │ ├── rtefe2.rs # Feautrier │ │ │ ├── rtefr1.rs │ │ │ ├── rteint.rs │ │ │ ├── rtesol.rs │ │ │ └── rte_sc.rs # 短特征 │ │ ├── compton/ # Compton 散射 │ │ │ ├── mod.rs │ │ │ ├── compt0.rs │ │ │ ├── comset.rs │ │ │ ├── angset.rs │ │ │ ├── inicom.rs │ │ │ ├── rtecmc.rs │ │ │ ├── rtecmu.rs │ │ │ └── rtecom.rs │ │ ├── prd/ # PRD │ │ │ ├── mod.rs │ │ │ ├── prdin.rs │ │ │ └── prdini.rs │ │ └── radtot.rs # 辐射积分 │ │ │ ├── thermodynamics/ # 热力学 (10 模块) │ │ ├── mod.rs │ │ ├── state.rs # 状态方程 │ │ ├── rhoeos.rs # T,P → ρ │ │ ├── rhonen.rs # 粒子密度迭代 │ │ ├── eldens.rs # 电子密度 │ │ ├── elcor.rs # 电子密度修正 │ │ ├── eldenc.rs # 电子密度分析 │ │ ├── entene.rs # 内能和熵 │ │ ├── trmder.rs # 热力学导数 │ │ ├── trmdrt.rs │ │ ├── setdrt.rs │ │ ├── prsent.rs # 热力学表插值 │ │ └── pgset.rs # 气体压力 │ │ │ ├── hydrogen/ # 氢原子特殊 (3 模块) │ │ ├── mod.rs │ │ ├── wn.rs # 占据概率 │ │ └── wnstor.rs │ │ │ └── radpre.rs # 辐射加速度 │ ├── equilibrium/ # [25 模块] 平衡计算 │ ├── mod.rs │ ├── statistical/ # 统计平衡 │ │ ├── mod.rs │ │ ├── rates1.rs # 辐射跃迁率 │ │ ├── ratmat.rs # 速率矩阵 │ │ ├── ratmal.rs # LTE 速率矩阵 │ │ ├── ratsp1.rs # 预条件化速率 │ │ ├── steqeq.rs # 统计平衡求解 │ │ ├── reflev.rs # 参考能级 │ │ ├── sabolf.rs # Saha-Boltzmann │ │ └── newpop.rs # 更新占据数 │ ├── ionization/ # 电离平衡 │ │ ├── mod.rs │ │ ├── russel.rs # Russell 迭代 │ │ └── moleq.rs # 分子/原子平衡 │ ├── partition/ # 配分函数 (8 模块) │ │ ├── mod.rs │ │ ├── partf.rs # 通用配分函数 │ │ ├── mpartf.rs # 配分函数计算器 │ │ ├── pfcno.rs # CNO 元素 │ │ ├── pffe.rs # Fe IV-IX │ │ ├── pfheav.rs # 重元素 │ │ ├── pfni.rs # Ni IV-IX │ │ ├── pfspec.rs # 特殊元素 │ │ └── tiopf.rs # TiO │ └── level/ # 能级处理 │ ├── mod.rs │ ├── levset.rs │ ├── levgrp.rs │ └── switch.rs │ ├── linearization/ # [15 模块] 完全线性化方法 │ ├── mod.rs │ ├── matrix/ # 矩阵计算 │ │ ├── mod.rs │ │ ├── bhe.rs # 流体静力平衡 │ │ ├── bre.rs # 辐射平衡 │ │ ├── brez.rs │ │ ├── bpop.rs # 统计平衡部分 │ │ ├── bpopc.rs # 电荷守恒 │ │ ├── bpope.rs │ │ ├── bpopf.rs │ │ ├── bpopt.rs │ │ ├── emat.rs # E 矩阵 │ │ └── matcon.rs # 对流贡献 │ ├── solver/ # 求解器 │ │ ├── mod.rs │ │ ├── solve.rs # 完整求解器 │ │ ├── solves.rs # 小系统 │ │ ├── levsol.rs # 能级求解 │ │ ├── matgen.rs # 矩阵生成 │ │ ├── matinv.rs # 矩阵求逆 │ │ └── rhsgen.rs # RHS 向量 │ └── rybicki/ # Rybicki 方法 │ ├── mod.rs │ ├── rybmat.rs │ ├── rybheq.rs │ ├── rybene.rs │ ├── rybchn.rs │ └── rybsol.rs │ ├── acceleration/ # [14 模块] 收敛加速 │ ├── mod.rs │ ├── ali/ # ALI 方法 │ │ ├── mod.rs │ │ ├── alifr1.rs │ │ ├── alifr3.rs │ │ ├── alifr6.rs │ │ ├── alifrk.rs │ │ ├── alisk1.rs │ │ ├── alisk2.rs │ │ ├── alist1.rs │ │ ├── alist2.rs │ │ ├── ijali2.rs │ │ ├── ijalis.rs │ │ └── getlal.rs │ ├── conv/ # 收敛加速 │ │ ├── mod.rs │ │ ├── accel2.rs │ │ ├── accelp.rs │ │ └── osccor.rs │ └── taufr1.rs │ ├── atmosphere/ # [30 模块] 大气模型 │ ├── mod.rs │ ├── convection/ # 对流 │ │ ├── mod.rs │ │ ├── convec.rs │ │ ├── concor.rs │ │ ├── conout.rs │ │ ├── conref.rs │ │ ├── contmd.rs │ │ └── contmp.rs │ ├── temperature/ # 温度修正 │ │ ├── mod.rs │ │ ├── temper.rs │ │ ├── temcor.rs │ │ ├── tlocal.rs │ │ ├── lucy.rs │ │ └── tdpini.rs │ ├── depth/ # 深度网格 │ │ ├── mod.rs │ │ ├── newdm.rs │ │ ├── newdmt.rs │ │ ├── dmder.rs │ │ ├── dmeval.rs │ │ ├── zmrho.rs │ │ ├── column.rs │ │ └── gridp.rs │ ├── hydrostatic/ # 流体静力平衡 │ │ ├── mod.rs │ │ ├── hesolv.rs │ │ ├── hesol6.rs │ │ └── betah.rs │ ├── grey/ # 灰大气 │ │ ├── mod.rs │ │ └── greyd.rs │ └── odf/ # ODF │ ├── mod.rs │ ├── odf1.rs │ ├── odffr.rs │ ├── ofhst.rs │ ├── odfhyd.rs │ ├── odfhys.rs │ └── odfmer.rs │ ├── spectral/ # [10 模块] 谱线处理 │ ├── mod.rs │ ├── linpro.rs │ ├── linsel.rs │ ├── linspl.rs │ ├── linfrq.rs │ ├── linovr.rs │ ├── linfxd.rs │ ├── sigmar.rs │ ├── rossop.rs │ └── rosstd.rs │ ├── io/ # [10 模块] 输入输出 │ ├── mod.rs │ ├── fortran/ # Fortran 格式 │ │ ├── mod.rs │ │ ├── reader.rs │ │ └── writer.rs │ ├── output.rs │ ├── rdata.rs │ ├── rdatax.rs │ ├── readbf.rs │ ├── inkul.rs │ ├── chctab.rs │ └── timing.rs │ ├── model/ # [15 模块] 模型初始化 │ ├── mod.rs │ ├── inilam.rs │ ├── inifrc.rs │ ├── inifrs.rs │ ├── inifrt.rs │ ├── inpdis.rs │ ├── visini.rs │ ├── change.rs │ ├── hedif.rs │ ├── dwnfr0.rs │ ├── dwnfr1.rs │ ├── dwnfr.rs │ ├── pzert.rs │ ├── corrwm.rs │ └── grcor.rs │ ├── utils/ # [5 模块] 通用工具 │ ├── mod.rs │ ├── getwrd.rs │ ├── quit.rs │ ├── prchan.rs │ └── princ.rs │ └── state/ # [现有] 状态结构 └── ...