def run_ptc_task(sensor_id):
    import lsst.eotest.sensor as sensorTest
    import siteUtils
    import eotestUtils

    file_prefix = '%s_%s' % (sensor_id, siteUtils.getRunNumber())
    flat_files = siteUtils.dependency_glob(
        'S*/%s_flat*flat?_*.fits' % sensor_id,
        jobname=siteUtils.getProcessName('flat_pair_raft_acq'),
        description='Flat files:')
    bias_frame = siteUtils.dependency_glob('%s_sflat*median_bias.fits' %
                                           sensor_id,
                                           description='Super bias frame:')[0]
    mask_files = \
        eotestUtils.glob_mask_files(pattern='%s_*mask.fits' % sensor_id)
    gains = eotestUtils.getSensorGains(jobname='fe55_raft_analysis',
                                       sensor_id=sensor_id)

    task = sensorTest.PtcTask()
    task.run(sensor_id, flat_files, mask_files, gains, bias_frame=bias_frame)

    results_file = '%s_eotest_results.fits' % sensor_id
    plots = sensorTest.EOTestPlots(sensor_id, results_file=results_file)
    siteUtils.make_png_file(plots.ptcs,
                            '%s_ptcs.png' % file_prefix,
                            ptc_file='%s_ptc.fits' % sensor_id)
Esempio n. 2
0
def ptc_task(run, det_name, flat_files, gains, mask_files=(),
             flat2_finder=find_flat2_bot, bias_frame=None):
    """Single sensor execution of the PTC task."""
    file_prefix = make_file_prefix(run, det_name)

    task = sensorTest.PtcTask()
    task.run(file_prefix, flat_files, mask_files, gains,
             flat2_finder=flat2_finder, bias_frame=bias_frame,
             linearity_correction=get_nlc_func(det_name))

    results_file = '%s_eotest_results.fits' % file_prefix
    plots = sensorTest.EOTestPlots(file_prefix, results_file=results_file)
    siteUtils.make_png_file(plots.ptcs,
                            '%s_ptcs.png' % file_prefix,
                            ptc_file='%s_ptc.fits' % file_prefix)
Esempio n. 3
0
@author J. Chiang <*****@*****.**>
"""
import lsst.eotest.sensor as sensorTest

parser = sensorTest.TaskParser('Compute photon transfer curve')
parser.add_argument('-f', '--flats', type=str, help='flat pairs file pattern')
parser.add_argument('-F',
                    '--flats_file_list',
                    type=str,
                    help='list of flat pair files')
parser.add_argument('-R',
                    '--rebinning_factor',
                    type=int,
                    help='rebinning factor',
                    default=1)
args = parser.parse_args()

task = sensorTest.PtcTask()
task.config.output_dir = args.output_dir
task.config.verbose = args.verbose

flat_files = args.files(args.flats, args.flats_file_list)

bias_frame = args.bias_frame('%s_flat_bias_frame.fits' % args.sensor_id)
task.run(args.sensor_id,
         flat_files,
         args.mask_files(flat_files[0]),
         args.system_gains(),
         binsize=args.rebinning_factor,
         bias_frame=bias_frame)