JWST文档网站,包含望远镜各式各样的信息
JWST数据网站里包括处理到可以做科学的pipeline、后续的数据分析工具,以及望远镜数据处理培训网站JWebbinars, 也可以直接去JWST的youtube网页看个痛快
JWST观测项目网站 具体到深场巡天的项目被聚合在这里, Gabriel Brammer老师做了个JWST的观测安排信息的网站
JWST主要用mirage来生成仿真数据 , mirage这个软件整合了仪器特性,如果要自己运行的话需要大约三百G硬盘容量来下载仪器数据
Dan Coe 老师整理了个从仿真到数据处理网站,预计内容会越来越丰富,他也写了个mirage的例子
JWST袖珍手册.pdf
我这里用来运行pipeline的数据主要有:EGS天区巡天项目CEERS的仿真数据和jwebbinars第三课的资料
两套处理流程略有不同,可以都下下来看看数据感受一下
我用了pipeline程序网站 的 Install the DMS Operational Build 的安装方案:用conda安装jwstdp的环境,然后用这个环境里的python安装jwst,asdf,requests,astropy等等
pipeline运行的时候会从服务器上下载Calibration Reference Data System (CRDS)定标文件到crds_cache文件夹,所以需要在运行pipeline前指定crds_cache文件夹位置和定标文件网站到环境变量CRDS_PATH和CRDS_SERVER_URL,也可以在python里这么着:
os.environ['CRDS_PATH'] = '~/Jobs/Astro-Code/crds_cache
os.environ['CRDS_SERVER_URL'] = 'https://jwst-crds.stsci.edu'
这样pipeline就配置好了,可以处理数据了:
韦伯望远镜的探测器是红外阵列,都和CMOS一样单个像素直接读出,其中NIRSpec的探测器上有能用的微快门来控制像素读出,很有特点,我这里只看完了NIRCam的数据,也只测试了NIRCam的pipelie
原始数据的后缀是uncal,一般是多层的fits,记录的从上一次复位开始到当前读出时刻的探测器计数,之后探测器复位,完成一个integration周期:
从复位开始,读出三次,每次积累四个曝光单元,每次读出的数据是从复位开始到读出时刻的总计数,用ds9可以看出来原始数据这个多层的fits的计数会越来越亮,也可以分成十二次读出等各种读出模式,图片出处
这个fits里读出的是每个读出时刻某个像素积累的计数,如果某个读出时刻某个像素收到宇宙线的话,从读出时刻,像素计数的图上很容易看到读数有个突变,如果积分到一半儿时间的时候像素饱和,也可以用还没饱和的那些计数和积累时间来估计源的流量
原始数据名字后半部分里有_nrca1到5,编号和探测器的位置关系:
前四个探测器对应是短波近红外相机读出模式,五号探测器对应长波红外相机,视场大一些,分辨率也低一些
韦伯数据处理pipeline指的是从原始数据到science ready数据,分三个步骤,得到的数据产品也分为三个级别,对原始数据做了仪器响应修正得到的是一级数据,再做定标后得到的是二级数据,把二级数据叠加起来得到的是三级数据,其中二级数据分为abc三个品种,简单的说处理到二级数据几乎就可以做科研了
韦伯的pipeline运行模式可以在python里也可以在终端里命令行,我这里用python里的模式,程序运行方法是先做一个对象,在用这个对象run:
detector1 = calwebb_detector1.Detector1Pipeline()
run_output = detector1.run(‘uncal.fits’)
image2 = calwebb_image2.Image2Pipeline()
image2.run(‘rate.fits’)
image3 = calwebb_image3.Image3Pipeline()
image3.run(‘asn_file’)
每个run之前可以给对象加参数
数据处理第一步是解决仪器响应,要把分析像素上读数和时间的关系,把坏点,饱和像素,增益,暗场等等的全都考虑进去,这一步需要用CRDS网站的设备信息,如果本地没有的话,程序会尝试从网站下载,大约3个G,处理几波数据后这个crds_cache文件夹会变得很大
第一步做完后,得到的是rate文件
接下来是第二步,修正平场,wcs,流量定标之类的:
效果是这样的:
在CEERS项目的例子里,平场里手动加了新的结构,所以单独做了修正
第三步,把几次观测的图像合并到一起,并且会做著名的Drizzle这里需要提供json文件,理论上获得原始数据的时候也会得到这个文件
然后运行一下第三步就会得到:










