FAST程序使用说明
1. 安装
下载地址:https://w.astro.berkeley.edu/~mariska/FAST_Download.html
运行环境:Linux+IDL
依赖:astron idlutils,安装到idl安装目录下的lib/code下即可。
下载解压程序文件后还需要额外下载ised_del.lr, ised_del.hr, ised_tru.hr和ised_exp.hr库文件,并解压至Libraries目录下。
运行时如果报错“% RESTORE: Incompatible saved routine written by IDL version newer than this one not restored
”,说明IDL版本不匹配,需要升级IDL或者重新编译可执行文件,下载https://w.astro.berkeley.edu/~mariska/fast/download/mkexe.idl后到FAST中的idl文件夹下,然后在idl目录下运行idl mkexe.idl -arg fast
即可重新生成可执行文件fast,拷贝或者链接到上级目录即可。
编译时如果报错“undefined procedure/function: ‘SETDEFAULTVALUE’
”,表明astron idlutils依赖没有安装,按照上面的方法安装依赖即可。
2. 运行
在FAST安装文件夹下新建一个文件夹作为运行文件夹,然后运行“../fast 参数文件名
”即可。如果没有指定参数文件名,则自动将fast.param作为参数文件输入。
2.1. 参数输入文件(fast.param)
2.1.1. 宽波段测光信息
CATALOG = 'hdfn_fs99' # 输入文件名,测光数据、测光红移文件和滤光片名称转化文件都以该参数决定
AB_ZEROPOINT = 25. # AB星等零点,AB星等mAB=[AB_ZEROPOINT]-2.5log(Flux),该值取决于测光数据([CATALOG].cat)中的流量Flux的单位。当单位为erg/s/cm2/Hz时为-48.57,当单位为微央斯基(mJy)时,该值为23.93
FILTERS_RES = '../Filters/FILTER.RES.v6.R300' # 滤光片文件
FILTER_FORMAT = 1 # 滤光片数据的计数单位,0 能量 / 1光子数量
TEMP_ERR_FILE = '../Template_error/TEMPLATE_ERROR.fast.v0.2' # 模板误差函数
NAME_ZPHOT = 'z_m2' # 测光红移文件中表示测光红移的列名,如果没有指定则默认读取'z_phot'
2.1.2. 光谱信息
SPECTRUM = ''
AUTO_SCALE = 0 # 0 / 1
2.1.3. 输出选项
OUTPUT_DIR = '' # 保存至目录
OUTPUT_FILE = '' # 保存文件名,如果没有指定默认为[CATALOG]_[SPECTRUM].fout
N_SIM = 0 # 指定蒙特卡罗方法运行次数,如果为0则只给出最佳拟合结果,其它值会给出相应置信水平的上下限,建议1000
C_INTERVAL = 68 # 置信水平68(1σ) / 95(2σ) / 99(3σ) or [68,95] etc
BEST_FIT = 1 # 0 / 1
2.1.4. 恒星模板库选择
LIBRARY_DIR = '../Libraries/' # 模板库保存路径,所有模板按照格式[LIBRARY_DIR]/ ised_[SFH].[RESOLUTION]/[LIBRARY]_[RESOLUTION]_[IMF]_z[METAL(只包含小数位)]_ltau[ltau/yr].ised存放
LIBRARY = 'co11' # 'bc03' / 'ma05' / 'co11'
RESOLUTION = 'hr' # 'pr'和'lr'用于测光拟合 / 'hr'用于光谱拟合
IMF = 'ch' # 'ch' Chabrier / 'sa' Salpeter / 'kr' Kroupa
SFH = 'del' # 'exp'指数衰减的SFR / 'del'乘上t的指数衰减的SFR / 'tru'一定起始时间和终止时间内恒定的SFR
DUST_LAW = 'kc' # 'calzetti' Calzetti (2000) / 'mw' Cardelli et al. (1989) / 'kc' Kriek & Conroy (2013) / 'noll'
# E_B = 1 # only define for 'noll' dust law
# delta = -0.2 # only define for 'noll' dust law
MY_SFH = ''
分辨率[RESOLUTION] |
恒星形成历史[SFH] |
初始质量函数[IMF] |
bc03 |
ma05 |
co11 |
---|---|---|---|---|---|
pr |
exp |
ch |
√ |
× |
× |
sa |
√ |
√ |
× |
||
kr |
× |
√ |
× |
||
lr |
del |
ch |
√ |
× |
× |
sa |
√ |
√ |
× |
||
kr |
× |
√ |
× |
||
hr |
exp |
ch |
√ |
× |
√ |
sa |
√ |
× |
× |
||
del |
ch |
√ |
× |
√ |
|
sa |
√ |
× |
× |
||
tru |
ch |
√ |
× |
× |
|
sa |
√ |
× |
× |
2.1.5. 恒星模板库参数
LOG_TAU_MIN = 8.5 # log [yr]
LOG_TAU_MAX = 10. # log [yr]
LOG_TAU_STEP = 0.5 # log [yr], min 0.1
LOG_AGE_MIN = 8.0 # log [yr]
LOG_AGE_MAX = 10.0 # log [yr]
LOG_AGE_STEP = 0.2 # log [yr]
NO_MAX_AGE = 0 # 0 / 1
Z_MIN = 0.01 # Cannot be 0.
Z_MAX = 6.00
Z_STEP = 0.05
Z_STEP_TYPE = 0 # 0: Z_STEP, 1: Z_STEP*(1+z)
A_V_MIN = 0. # [mag]
A_V_MAX = 3. # [mag]
A_V_STEP = 0.1 # [mag]
METAL = [0.019] # 模板包含的金属丰度,可以填多个值,不同模板库所能取的值不同,ma05: [0.001, 0.01, 0.02(solar), 0.04],bc03: [0.004, 0.008, 0.02(solar), 0.05],co11: [0.0008, 0.0031, 0.0096, 0.019(solar), 0.03]
2.1.6. 宇宙学参数
H0 = 70.0 # 哈勃常数,单位km/s/Mpc
OMEGA_M = 0.3 # 物质密度占比
OMEGA_L = 0.7 # 暗能量密度占比
2.1.7. 中间输出保存选项
SAVE_CHI_GRID = 0 # 0 不保存 / 1 保存
2.2. 测光数据文件([CATALOG].cat)
第一行为列名
\# id F[n] E[n] … z_spec
其中F[n]和E[n]分别表示滤光片n的流量(Fν)和流量误差,n表示滤光片文件中第n个滤光片(第一个为1),可以在[FILTERS_RES].info中快速查看。同时你也可以用滤光片名称转化文件([CATALOG].translate),不用F[n]和E[n]来表示。其它列不能以F或者E开头。流量的单位要和AB星等零点([AB_ZEROPOINT])对应的单位保持一致。z_spec表示光谱红移。
2.3. 测光红移文件([CATALOG].zout)
可以使用EAZY程序直接生成,第一行为列名
\# id z_spec z_1 z_m1 chi_1 temp_1 z_p chi_p temp_p z_m2 odds l68 u68 l95 u95 l99 u99 nfilt
注意:
当[NAME_ZPHOT]没有定义时,自动读取z_phot列作为测光红移的参数。
“l68/l95/l99”和”h68/h95/h99”列用来估计置信区间。
测光数据文件([CATALOG].cat)已经定义了z_spec光谱红移时,该文件中的z_spec将被忽略。
2.4. 滤光片名称转化文件([CATALOG].translate)
滤光片名称转化文件目的是将测光数据文件中的列名转化为F[n],以方便读写测光数据文件。文件分为两列,第二列的F[n]和E[n]会把第一列在测光数据文件中的列名替换掉。
2.4.1. 示例
滤光片名称转化文件[CATALOG].translate内容:
f_f300w F10
e_f300w E10
f_f450w F12
e_f450w E12
滤光片信息文件(FILTER.RES.latest.info)内容:
10 1163 1409 hst/wfpc2_f300w.dat
12 3043 183 hst/wfpc2_f450w.dat
这样在测光数据文件([CATALOG].cat)中就可以用f_f300w代替F10来表示HST的wfpc2_f300w滤光片的数据了。
2.5. 滤光片文件([FILTERS_RES])
Filters文件夹下已经保存了许多望远镜的滤光片的信息。滤光片文件分为滤光片数据文件(FILTER.RES.latest)和信息文件(FILTER.RES.latest.info),信息文件可以快速查看滤光片的序号n。
最新滤光片文件下载地址:https://github.com/gbrammer/eazy-photoz/tree/master/filters
3. 输出结果
3.1. 列名
\# id z ltau metal lage Av lmass lsfr lssfr la2t chi2
3.2. 描述
ltau: 恒星形成时标,对于不同的[SFH]其具体定义有区别,单位为log[tau/yr],
lage: 恒星年龄,单位为log[age/yr],
lmass: 恒星质量,单位为log[mass/Msol]
lsfr: 恒星形成率,单位为log[sfr/(Msol/yr)]
lssfr: 比恒星形成率,单位为log[ssfr*yr]
la2t: 恒星年龄和恒星形成时标的比值,单位为log[age/tau]
4. 附加内容
4.1. HST图像测光系统
HST图像给出的数据单位是“电子数每秒”,并不能直接用来测光,需要转化成Fν(erg/s/cm2/Hz)才能使用,此时对应AB星等零点为-48.6。
由于AB星等系统是基于频率单位的流量密度Fν,因此还需要进一步转化
将电子数每秒直接转化为视星等:
https://www.stsci.edu/hst/instrumentation/acs/data-analysis/zeropoints
https://hst-docs.stsci.edu/wfc3dhb/chapter-9-wfc3-data-analysis/9-1-wfc3-data-analysis
4.2. 流量单位和AB星等零点的转化
有些时候流量数值过小,比如小于10-32时,FAST将无法计算出结果,这时候需要缩小输入流量的单位,提升流量数值来进行计算,相应AB星等零点[AB_ZEROPOINT]也要进行修改。
4.3. parallel并行运行FAST
注意用parallel运行多个fast实例时,每个实例的运行目录都要分开,防止生成的文件发生冲突。最好的方法是创建三级目录,让fast在三级目录下运行,然后把参数输入文件(fast.param)中的模板库、滤光片等相对路径再往上加一级,例如LIBRARY_DIR='../../Libraries/'
。然后在二级目录创建脚本,里面每一行的内容都写“cd 三级目录名 && ../../fast fast.param
”。