tlusty目录树整理

This commit is contained in:
fengmengqi
2026-03-25 18:28:13 +08:00
parent 89574aca25
commit 3416c491ad
8 changed files with 528 additions and 723 deletions
+385
View File
@@ -0,0 +1,385 @@
建议的新目录结构
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/ # [现有] 状态结构
└── ...