继续阅读
吸积盘怎样发光 · 阅读路径
吸积盘怎样发光
还有 1 组
用到同一实验的其他文章
本文用到、其他系列也在用的实验,后面跟着那些系列里的文章。
L4 · 方法与论文阅读
给每个发光交点算出温度和频移,再按它在观察者天空所占的面积相加,就能同时得到盘像和光谱。下面选一个实际保存的模拟端点,先看它怎样进入一小格图像,再加成固定孔径光谱。
下载教程包。其中有内缘六引力半径和九引力半径两种原参考吸积率状态,各自保留交点表与面积权重,也都包括三个视角和两级积分。教程重新计算局部发射和加权传输;光路与首次不透明交点沿用保存的结果。关于一次交点为什么有这种含义,可先读最先遇到的不透明盘面。
下载包共 6,974,583 字节,SHA256 为:
be1f5c1ea1120b58a54d423d116590fc95c9599d39dc5f1172a7cd7c36d1a122解压后,在同时有 collection.json 和 source/ 的目录打开终端。用 Python 3.12 或更新版本即可,读者程序只用标准库。依次执行:
python3 -I -B source/isolated_entry.py source/recompute.py --package . --case rin6-reference-rate --collection-sha256 ad1a4b0d345c179093accdce888d5ee8a49eda9348cfe5aa58d61f6bd67483e1 --output rin6-recomputed
python3 -I -B source/isolated_entry.py source/recompute.py --package . --case rin9-reference-rate --collection-sha256 ad1a4b0d345c179093accdce888d5ee8a49eda9348cfe5aa58d61f6bd67483e1 --output rin9-recomputed两份 result.json 成功时都应写出 PASS_PORTABLE_EMISSION_AND_TRANSFER。每次选新的输出目录,旧记录会保留下来。这套代码已在独立 Python 进程中重算两种状态、零度/六十度/七十五度三个视角、两级积分和全部二百五十七个原频率,源比较与物理检查均通过。
两种状态共同规定质量 、向内吸积率 、距离 和颜色硬化因子 。发光盘的外缘在六千引力半径。这些都是模拟输入。
先打开 collection.json,看数组名、维度、单位、列含义与来源身份。每种状态的 input.npz 装几何、首次交点状态、原正面积权重、小区面积与原频率表;独立的 expected.npz 装参考辐射量和保存的显示数组。
endpointIds 依次给出视角、光线、状态和所选交点次序。endpointCoordinates 记录屏幕方位角、光路转角、发射半径及逆半径导数。weightIds 则把端点连到某一级积分和某个有限小区。同一个端点可以出现在多条权重行里,不能把每行直接当一个相机像素。
确定没有遇到发光盘面的方向供光为零,频率比和有效温度标为不适用,以 NaN 配原状态表示。输入中未定义的坐标保留原 NaN 字节。盘面法线方向余弦只供对照;发射函数的参数里没有参考辐射量。
选六引力半径状态、六十度视角和细一级积分,级别编号为一。端点 54626 属于光线 129,状态为 HIT。它的发射半径是 ,屏幕影响参数是 。下面公式中的距离都用引力半径 缩放; 是引力常量, 是光速。前一个半径落在气体盘面,后一个描述观察者屏幕上的位置。
先按 换成米。规定的牛顿零内缘力矩供能律给出单面表面通量,再由它求有效温度:
是内缘的米制半径, 是斯特藩–玻尔兹曼常量。Zimmerman 等的 astro-ph/0408209v1 第 2 节推导了这条供能律。薄盘在哪里发热从力矩做功走到这一步。代码保留上面的半径乘法分组,内缘附近也一样。
再读原屏幕方位角 ;倾角 从盘面法线量起。本材料采用的坐标方向给出
用 SI 单位说,,其中 是光子绕盘轴的角动量, 是它在无穷远处的能量; 是到达频率除以发射频率。这个端点重新算出 、。沿这个方向到达的光蓝移了,本地温度仍属于发光的气体。
若局部各方向等强度发光,远方的总比强度为
这里得到 。按频率看,两种等价写法是
是普朗克能量比强度,代码使用 SI 形式。像的三个原通道分别取 。中间通道的值是 。热谱和颜色硬化可先看把不同温度圆环加成一条光谱,三次方和四次方因子接着读频率和亮度的改变;Li 等的附录 E给出强度传输的原典定义。
权重行 59420 把这个端点连到细积分的第 345 格。它是观察者屏幕上的一个扇区:影响参数从十到十四,角度占整圆三十分之一。面积为 ,其中有 42 条原正权重。
屏幕第 345 格的原积分采样点,橙色标出端点 54626。这是一个有限像平面扇区,不是精细相机像素。
打开完整图像用 编号权重行, 是它对应的端点, 表示一个像通道。先求小区强度积分,再除以小区面积:
所选权重为 ,给总强度积分贡献 。把 42 行都加上,小区积分为 。再除以面积,平均强度为 。
这里要用当前状态自己的小区面积与径向分区。六引力半径和九引力半径状态的数组形状相同,物理边界却不同。这个平均值描述的是整块有限区域。
在原来的二百五十七个频率逐一求强度,再按全部适用的原权重相加。取 weightAreaRg2 中的面积数值,每个面积单位对应 球面度,接收到的通量就是
这里使用原方形孔径,两个屏幕方向都从中心向外延伸一百四十四个引力半径。像平面面积已经包含观察几何,再乘平盘余弦会改掉这次计算。中央图像只显示二十四个引力半径,是裁画面,不改这次求和。
参考吸积率、六十度、细积分下实际重算的两条光谱。图中只展示一个频率窗口,文件保留完整原频率表。
打开完整图像六引力半径状态的细积分总通量下界为 ,九引力半径状态为 。它们是固定有限孔径收到的模拟通量。图里画 ,频率窗口为 到 ;对数坐标只是看图方式,频率积分和检查仍用完整原表。
未解析的窄临界带另有供光上界,图像与光谱只加已确定的供光。重追光路或新选首次不透明交点,必须另做相应计算与验证。这里固定交点,用规定的牛顿供能接史瓦西传播。
正常温度、强度和加权输出与同源参考值比较,相对容差为 ;频率比用 。这是算术重放容差。零力矩内缘附近,F64 数值相同,不表示连续模型温度处处一样准确。光谱零值和次正规尾部沿用一千一百位十进制正项点积 IEEE 区间,以重算的 F64 强度和原 F64 权重为条件。ULP 是相邻可表示数的间隔,检查报告绝对 ULP 和无法达到的相对精度。九引力半径状态没有另行证明的十进制条件误差界。
物理检查保留两级空间与光谱 限制 、未知供光比例 、光谱与总通量一致性 、一百二十九/二百五十七频率一致性 ,以及精确面积和立体角限制 。看一条检查时,把实际值和阈值放在一起。源身份、算术或物理检查首次失败就停,并保留全部已返回前缀。
运行小型反例:
python3 -I -B source/isolated_entry.py source/isolated_fixtures.py --package . --collection-sha256 ad1a4b0d345c179093accdce888d5ee8a49eda9348cfe5aa58d61f6bd67483e1 --output tutorial-fixtures参考图像被改坏,为什么新图像不跟着变? 小样例先写坏参考,再开始一次新计算。只接收几何的发射程序和原权重仍算出相同图像,最后由独立比较明确拒绝坏参考。若损坏的是真实下载文件,文件身份检查也会拒绝它。
把六引力半径表中小于九的交点删掉,就有九引力半径图像了吗? 光路可以先穿过更大的内孔,再遇到后面的盘面。已有九引力半径状态因此使用自己的首次交点表。任意新内缘都需要重新获得合格的选择结果。
两种接收通量该严格按内缘半径反比吗? 那个缩放属于特定的牛顿总功率比较。某个有限孔径收到多少光,还取决于哪些方向碰到盘、各自经过怎样的频移。这里要比较实际的完整求和。
别人要检查你的结果,该留下哪些文件? 保留 result.json、生成的 NPZ、两份原始返回文件和尾部检查,再配上精确的集合哈希。有失败时,也能找到第一次出错的位置。正文数值为便于阅读作了四舍五入,完整精度另存于配套例题文件。
吸积盘怎样发光 · 阅读路径
本文用到、其他系列也在用的实验,后面跟着那些系列里的文章。