crosstalk_deprojection.py 文件源码

python
阅读 35 收藏 0 点赞 0 评论 0

项目:atoolbox 作者: liweitianux 项目源码 文件源码
def write(self, outfile, clobber=False):
        """
        Create a new "SPECTRUM" table/extension and replace the original
        one, then write to output file.
        """
        # Open the original input spectrum as the base
        fitsobj = fits.open(self.filename)
        columns = [
                fits.Column(name="CHANNEL", format="I", array=self.channel),
                fits.Column(name=self.spec_type, format=self.spec_fits_format,
                            unit=self.spec_unit, array=self.spec_data),
        ]
        if self.grouping is not None:
            columns.append(fits.Column(name="GROUPING",
                                       format="I", array=self.grouping))
        if self.quality is not None:
            columns.append(fits.Column(name="QUALITY",
                                       format="I", array=self.quality))
        if self.stat_err is not None:
            columns.append(fits.Column(name="STAT_ERR", unit=self.spec_unit,
                                       format=self.spec_fits_format,
                                       array=self.stat_err))
        ext_spec_cols = fits.ColDefs(columns)
        ext_spec = fits.BinTableHDU.from_columns(ext_spec_cols,
                                                 header=self.header)
        # Replace the original spectrum data
        fitsobj["SPECTRUM"] = ext_spec
        try:
            fitsobj.writeto(outfile, overwrite=clobber, checksum=True)
        except TypeError:
            fitsobj.writeto(outfile, clobber=clobber, checksum=True)
# class Spectrum }}}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号