# 8.其他操作
# 8.1.缩小波长范围
用户可以在菜单栏中选择 Operations - Wavelength range reduction
来对当前激活状态下的光谱进行裁剪,并且用户可指定起止波长或是直接使用定义好的 segments
/ line
区域。用户也可以选择将被剪除的那部分流量用 0 值代替。
# 8.2.应用数学表达式
用户可以通过应用数学表达式来修改激活状态下的光谱的波长、流量和误差值。数学表达式中可以是以下表列出的函数的任意组合: (⚡️ 对表格中的说明翻译)
译者注:这些数学表达式调用的就是 Python 中
numpy
下的各个数学计算模块。
表达式 | 说明 |
---|---|
sin(x) | Trigonometric sine, element-wise |
cos(x) | Cosine elementwise |
tan(x) | Compute tangent element-wise |
arcsin(x) | Inverse sine, element-wise |
arccos(x) | Trigonometric inverse cosine, element-wise |
arctan(x) | Trigonometric inverse tangent, element-wise |
arctan2(x1, x2) | Element-wise arc tangent of x1/x2 choosing the quadrant correctly |
sinh(x) | Hyperbolic sine, element-wise |
cosh(x) | Hyperbolic cosine, element-wise |
tanh(x) | Compute hyperbolic tangent element-wise |
arcsinh(x) | Inverse hyperbolic sine elementwise |
arccosh(x) | Inverse hyperbolic cosine, elementwise |
arctanh(x) | Inverse hyperbolic tangent elementwise |
around(a[, decimals, out]) | Evenly round to the given number of decimals |
floor(x) | Return the floor of the input, element-wise |
ceil(x) | Return the ceiling of the input, element-wise |
exp(x) | Calculate the exponential of all elements in the input array |
log(x) | Natural logarithm, element-wise |
log10(x) | Return the base 10 logarithm of the input array, element-wise |
log2(x) | Base-2 logarithm of x |
sqrt(x) | Return the positive square-root of an array, element-wise |
absolute(x) | Compute the absolute values elementwise |
add(x1, x2) | Add arguments element-wise |
multiply(x1, x2) | Multiply arguments element-wise |
divide(x1, x2) | Divide arguments element-wise |
power(x1, x2) | First array elements raised to powers from second array, element-wise |
subtract(x1, x2) | Subtract arguments, element-wise |
mod(x1, x2) | Return element-wise remainder of division |
该功能可以在菜单栏 Operations - Apply mathematical expression
中找到。如上图中,当前 3 个值的变量名分别为 waveobs
, flux
和 err
,我们可以将这 3 个变量名用于数学表达式中,对数据进行操作。
举几个例子:
- 通过将波长除以 10 将波长从单位
Å
转换为nm
:Wavelengths = waveobs / 10
- 改变流量的尺度:
Fluxes = power(flux, 2)
- 通过使用相对于流量的百分比来修改误差:
Errors = err * 0.0 + 1.0
- 将误差值置为一个常数:
Errors = err * 0.0 + 1.0
通过数学表达式运算的结果应为与原始光谱具有相同数量元素的数组,即运算前后的数组长度应该保持一致。
# 8.3.清洗流量和误差
为了过滤掉较差的测量,用户可以在菜单栏中选择 Operations - Clean fluxes and errors
来清洗当前激活状态下的光谱。用户必须指定流量和误差的上下值。
此外,可以考虑使用一个限定区域内的平均和标准偏差值(介于流量上下值之间)来进行清洗。尽管因为该操作会删除发射线而需谨慎使用,但它对于移除宇宙线残留也很有用。
# 8.4.清洗大气吸收线区域
通过菜单栏中的 Operations - Clean telluric regions
,用户可以清洗那些可能会受大气吸收线影响的光谱区域。为达到该目的,以下的参数是必需的:光谱的径向速度(建议事先校正径向速度,这样径向速度就可以设为 0)、要考虑的大气吸收线的最小深度、以及需要清洗的大气吸收线周围的区域。用户可以选择完全移除这部分流量,或是用连续谱而非 0 值来代替它们。
建议采用默认下的 +/- 30 km/s,因为它代表了典型的大气吸收线可能的最大速度范围。例如,假设一颗假想的恒星相对于太阳的径向速度为 0,那么从地球上观察时,由于地球绕着太阳旋转,因而有可能测得径向速度。对于这颗假想的恒星,所测得的每一个径向速度通常会在 -30 至 +30 km/s 之间,具体取决于观测的天区。
当光谱将作为测量另一条光谱的径向速度的模板时,该项功能会很有用。从模板中清洗所有这些流量,可以减少待测光谱中潜在的大气吸收线的影响。
# 8.5.重采样光谱
通过选择菜单栏中的 Operations - Resample spectrum
,可以在一个波长范围内以固定的步长均匀地重新采样当前激活状态下的光谱。
插值方法可以是线性的,可以是贝塞尔方法(每个插值点考虑 4 个点,其结果往往比线性插值更平滑,但不建议这样做),或者是样条插值(它可能有助于平滑光谱,但同样不建议)。
# 8.6.合并光谱
在菜单栏 Edit - Combine all spectra
中,通过使用流量值的均值/中位数,或是减去(激活状态光谱减去其他光谱)、加上、除以(激活状态光谱除以其他光谱)流量值,可以合并所有打开的光谱。建议在这样做之前,对齐所有光谱(比如径向速度校正),并且它们应具有相同的分辨率。
这一过程执行以下操作:
- 构建一个共同的波长坐标,该坐标取决于用户指定的波长范围和步长;
- 通过在共同的波长坐标的每个点上插值流量来使所有光谱均匀化。⚡️ 值得注意的是,绘图区中所看到的光谱并没有被均匀化的版本所取代,它们只是在内部中由
combine
函数所使用; - 合并均匀化后的光谱,并呈现结果。