Exemple #1
0
# -*- coding: utf-8 -*-

# A simple benchmark script for DP3 and wsclean
# they need to be in "./mss/"

import sys, os, glob, re, argparse
import numpy as np
import time
import lsmtool
import multiprocessing as mp

########################################################
from LiLF import lib_ms, lib_img, lib_util, lib_log
logger_obj = lib_log.Logger('script-benchmark.logger')
logger = lib_log.logger
s = lib_util.Scheduler(log_dir=logger_obj.log_dir, dry=False)
w = lib_util.Walker('script-benchmark.walker')
parset = lib_util.getParset()
parset_dir = parset.get('LOFAR_self', 'parset_dir')

parser = argparse.ArgumentParser(description="Benchmark LOFAR software.")
parser.add_argument("msfiles",
                    type=str,
                    help="Input ms files, glob-like string")
parser.add_argument("--sourcedb",
                    default='',
                    help="If you want to provide a certain skymodel.")
args = parser.parse_args()
#############################################################################
# Clear
with w.if_todo('cleaning'):
Exemple #2
0
#!/usr/bin/env python
# -*- coding: utf-8 -*-

# Pipeline to run on the calibrator observation.
# It isolates various systematic effects and
# prepare them for the transfer to the target field.

import sys, os, glob, re
import numpy as np

########################################################
from LiLF import lib_ms, lib_img, lib_util, lib_log
lib_log.Logger('pipeline-cal.logger')
logger = lib_log.logger
s = lib_util.Scheduler(dry=False)

# parse parset
parset = lib_util.getParset()
parset_dir = parset.get('cal', 'parset_dir')
data_dir = parset.get('cal', 'data_dir')
skymodel = parset.get('cal', 'skymodel')
imaging = parset.getboolean('cal', 'imaging')
bl2flag = parset.get('flag', 'stations')

if 'LBAsurvey' in os.getcwd():
    obs = os.getcwd().split('/')[-2]  # assumes .../c??-o??/3c196
    calname = os.getcwd().split('/')[-1]  # assumes .../c??-o??/3c196
    data_dir = '../../download/%s/%s' % (obs, calname)

#############################################################
MSs = lib_ms.AllMSs(glob.glob(data_dir + '/*MS'), s)
Exemple #3
0
#!/usr/bin/env python
# -*- coding: utf-8 -*-

# Data preparation for selfcal, apply cal solutions
# and split SB in time and concatenate in frequency.

import sys, os, glob, re
import numpy as np
from astropy.time import Time
import casacore.tables as pt

########################################################
from LiLF import lib_ms, lib_util, lib_log
logger_obj = lib_log.Logger('pipeline-timesplit.logger')
logger = lib_log.logger
s = lib_util.Scheduler(log_dir=logger_obj.log_dir, dry=False)
w = lib_util.Walker('pipeline-timesplit.walker')

# parse parset
parset = lib_util.getParset()
parset_dir = parset.get('LOFAR_timesplit', 'parset_dir')
data_dir = parset.get('LOFAR_timesplit', 'data_dir')
cal_dir = parset.get('LOFAR_timesplit', 'cal_dir')
ngroups = parset.getint('LOFAR_timesplit', 'ngroups')
initc = parset.getint(
    'LOFAR_timesplit',
    'initc')  # initial tc num (useful for multiple observation of same target)
bl2flag = parset.get('flag', 'stations')

#################################################
# Clean
Exemple #4
0
# Pipeline for single facet self calibration

import sys, os, glob, re
import numpy as np
import pyrap.tables as pt
import lsmtool

#TODO, to extract from regionfile:
lastcycle = 0  # get from somewhere
target_reg = 'target.reg'

#######################################################
from LiLF import lib_ms, lib_img, lib_util, lib_log, lib_dd
logger_obj = lib_log.Logger('pipeline-facet_self.logger')
logger = lib_log.logger
s = lib_util.Scheduler(log_dir=logger_obj.log_dir,
                       dry=False)  #, maxThreads = 4)
w = lib_util.Walker('pipeline-facet-self.walker')

# parse parset
parset = lib_util.getParset()
parset_dir = parset.get('LOFAR_facet_self', 'parset_dir')
maxniter = parset.getint('LOFAR_facet_self', 'maxniter')
userReg = parset.get('model', 'userReg')
mosaic_image = lib_img.Image('ddcal/images/c%02i/mos-MFS-image.fits' %
                             lastcycle)

############################
if w.todo('cleaning'):

    logger.info('Cleaning...')
    lib_util.check_rm('plot*')