Source code for ecpi.database.caldb_tools

"""
Tools for CALDB
"""
import os.path as osp
import logging
from glob import glob
from astropy.io import fits

logger = logging.getLogger(__name__) 


[docs]def get_arf_files(workdir): """Return list of .fits where first extension have 3 columns - ENERG_LO - ENERG_HI - SPECRESP as ARF file must have equal tSPECRESPo name. :param workdir: directory containing .fits files :type workdir: string :return: list of ARF files :rtype: list """ res = list() l_fits_files = glob(osp.join(workdir, "ECL-RSP-ARF*.fits")) for fits_file in l_fits_files: logger.debug(fits_file) try: with fits.open(fits_file) as f_arf: if f_arf[1].header['TTYPE1'] == 'ENERG_LO' and \ f_arf[1].header['TTYPE2'] == 'ENERG_HI' and \ f_arf[1].header['TTYPE3'] == 'SPECRESP': res.append(fits_file) logger.debug(f'{fits_file} is ARF file') except: pass return res