Exemplo n.º 1
0
def plotms(pipeline, recipe, config, plotname, msname, field, iobs, label, prefix, opts, ftype, fid, output_dir, corr_label=None):
    step = 'plot-{0:s}-{1:d}-{2:d}'.format(plotname, iobs, fid)
    colouraxis = opts.get("colouraxis", None)
    recipe.add("cab/casa_plotms", step, {
        "vis": msname,
        "field": field,
        "correlation": opts['corr'],
        "timerange": '',
        "antenna": '',
        "xaxis": opts['xaxis'],
        "xdatacolumn": config[plotname]['col'],
        "yaxis": opts['yaxis'],
        "ydatacolumn": config[plotname]['col'],
        "avgtime": config[plotname]['avgtime'],
        "avgchannel": config[plotname]['avgchan'],
        "coloraxis": sdm(colouraxis),
        "iteraxis": sdm(opts.get('iteraxis', None)),
        "plotfile": '{0:s}-{1:s}-{2:s}-{3:s}-{4:s}.png'.format(prefix, label, ftype, field, plotname),
        "expformat": 'png',
        "exprange": 'all',
        "overwrite": True,
        "showgui": False,
        "uvrange": config["uvrange"],
    },
        input=pipeline.input,
        output=output_dir,
        label="{0:s}:: Plotting corrected {1:s}".format(step, plotname))
Exemplo n.º 2
0
def ragavi_vis(pipeline, recipe, config, plotname, msname, field, iobs, label, prefix, opts, ftype, fid, output_dir, corr_label=None):
    step = 'plot-{0:s}-{1:d}-{2:d}'.format(plotname, iobs, fid)
    col = config[plotname]['col']
    if col == "corrected":
        col = "CORRECTED_DATA"
    elif col == "data":
        col = "DATA"
    if corr_label:
        corr_label = "Corr" + corr_label
    else:
        opts['corr'] = "0:"
        corr_label = ""
    recipe.add("cab/ragavi_vis", step, {
        "ms": msname,
        "xaxis": opts['xaxis'],
        "yaxis": opts['yaxis'],
        "canvas-height": opts['canvas-height'],
        "canvas-width": opts['canvas-width'],
        "corr": opts["corr"],
        "mem-limit" : opts['mem-limit'],
        "num-cores" : opts['num-cores'],
        # "cbin": int(config[plotname]['avgchan']),
        # "colour-axis": opts.get("colour-axis", None),
        "data-column": col,
        "field": str(fid),
        "htmlname": "{0:s}-{1:s}-{2:s}-{3:s}-{4:s}-{5:s}".format(prefix, label, ftype, field, plotname, corr_label),
        "iter-axis": sdm(opts.get('iter-axis', None)),
        # "tbin": float(config[plotname]['avgtime']),

    },
        input=pipeline.input,
        output=output_dir,
        label="{0:s}:: Plotting corrected {1:s}".format(step, plotname))
Exemplo n.º 3
0
 def test_dismissable(self):
     global MSDIR
     global INPUT
     global OUTPUT
     stimela.register_globals()
     rrr = stimela.Recipe("testdismissable", ms_dir=MSDIR)
     assert os.path.exists(MSDIR)
     rrr.add("cab/custom", "test1", {
         "bla1": "a", # only accepts a, b or c
         "bla4": sdm("abc"),
         "bla3": sdm(None)
     }, input=INPUT, output=OUTPUT)
     rrr.run() #validate and run
     assert rrr.jobs[0].job._cab.parameters[0].value == "a"
     assert rrr.jobs[0].job._cab.parameters[1].value is None
     assert rrr.jobs[0].job._cab.parameters[2].value is None
     assert rrr.jobs[0].job._cab.parameters[3].value == ["abc"]
Exemplo n.º 4
0
               "config": "mk_rfi_flagging_pol_mask.yaml",
           },
           input=INPUT,
           output=OUTPUT,
           label="mask_poldata")

# First solve for crosshand delays with respect to the refant
# A stronly polarized source is needed for SNR purposes

for icf, cf in enumerate(all_cals):
    recipe.add("cab/casa47_setjy",
               "set_model_calms_%d" % icf, {
                   "msname": BP_CAL_MS,
                   "field": cf,
                   "standard": all_cals[cf]["standard"],
                   "fluxdensity": sdm(all_cals[cf]["fluxdensity"]),
                   "spix": sdm(all_cals[cf]["spix"]),
                   "reffreq": sdm(all_cals[cf]["reffreq"]),
                   "polindex": sdm(all_cals[cf]["polindex"]),
                   "polangle": sdm(all_cals[cf]["polangle"]),
               },
               input=INPUT,
               output=OUTPUT,
               label="set_model_calms_%d" % icf)


def __correct_feed_convention(ms):
    from pyrap.tables import table as tbl
    import numpy as np
    with tbl("%s::FEED" % ms, readonly=False) as t:
        ang = t.getcol("RECEPTOR_ANGLE")