def disp(): path = '{}.v-i.perc'.format(src) if os.path.exists(path): shutil.rmtree(path) miriad.maths({ 'exp': '100*<{0}.v.cm>/<{0}.i.cm>'.format(src), 'mask': '<{}.i.cm>.gt.0.4'.format(src), 'out': '{}.v-i.perc'.format(src) }) for device in ['/xs', '{}.ps/cps'.format(src)]: miriad.cgdisp({ 'type': 'cont,pix', 'labtyp': 'arcsec,arcsec', 'device': '/xs', 'options': 'full,beambl,3val', 'in': '{0}.v-i.perc,{0}.i.cm'.format(src), 'cols1': 8, 'slev': 'a,1,p,1', 'levs1': '-8,-6,-4,-2,2,4,6,8', 'region': 'arcsec,box(-5.5,-6,6.5,6)', })
'in': '{}.{}.cm'.format(src, stk), 'region': 'box(6,6,50,122)' }) input('Press return to continue') for stk in ['i', 'q', 'u', 'v']: miriad.imstat({'in': '{}.{}.cm'.format(src, stk)}) # DISP path = '{}.v-i.perc'.format(src) if os.path.exists(path): shutil.rmtree(path) miriad.maths({ 'exp': '100*<{0}.v.cm>/<{0}.i.cm>'.format(src), 'mask': '<{}.i.cm>.gt.2'.format(src), 'out': '{}.v-i.perc'.format(src) }) for device in ['/xs', '{}.ps/cps'.format(src)]: miriad.cgdisp({ 'type': 'cont,pix', 'labtyp': 'arcsec,arcsec', 'device': '/xs', 'options': 'full,beambl,3val', 'in': '{0}.v-i.perc,{0}.i.cm'.format(src), 'cols1': 8, 'slev': 'a,1,p,1', 'levs1': '-8,-6,-4,-2,2,4,6,8', 'region': 'arcsec,box(-5.5,-6,6.5,6)', 'nxy': '6,3'
def disp(uvo, uvc, so, mapdir, lines=[], stokesVrms=[]): """ 1. Plot uncorrected channel map 2. Plot corrected channel map """ for i, lin in enumerate(lines): # for lin in ['cnt', 'co3-2', 'sio8-7']: devicetype = 'ps/cps' filename = lin src = '{}/{}.{}'.format(mapdir, so, lin) nxy = '1,1' path = '{}.v-i.perc'.format(src) if os.path.exists(path): shutil.rmtree(path) path = '{}.v-i.perc.uncorrected'.format(src) if os.path.exists(path): shutil.rmtree(path) rms = stokesVrms[i] if lin == 'cnt': for suffix in ['', 'uncorrected.']: opts = { 'exp': '100*<{0}.{1}v.cm>/<{0}.{1}i.cm>'.format(src, suffix), 'mask': '<{}.{}i.cm>.gt.0.4'.format(src, suffix), } suffix = '.uncorrected' if suffix != '' else '' opts['out'] = '{}.v-i.perc{}'.format(src, suffix) miriad.maths(opts) else: for suffix in ['', 'uncorrected.']: val = 6 if suffix == '' else 8 opts = { 'exp': '100*<{0}.{1}v.cm>/<{0}.{1}i.cm>'.format(src, suffix), 'mask': '<{}.{}i.cm>.gt.{}'.format(src, suffix, val), } suffix = '.uncorrected' if suffix != '' else '' opts['out'] = '{}.v-i.perc{}'.format(src, suffix) miriad.maths(opts) for datatype in ['uncorr', 'corr']: cgdispOpts = { 'type': 'cont,cont', 'labtyp': 'arcsec,arcsec', 'options': 'full,beambl,3val', 'csize': '0,1,0,0', 'cols1': 2, 'cols2': 8, 'levs1': '-95,-75,-55,-35,-15,15,35,55,75,95', 'nxy': nxy, } if datatype is 'uncorr': # flux plot cgdispOpts['slev'] = 'p,1,a,{}'.format(rms) cgdispOpts['device'] = '{}.uncorr.{}'.format( filename, devicetype) cgdispOpts[ 'in'] = '{0}.uncorrected.i.cm,{0}.uncorrected.v.cm'.format( src) cgdispOpts['levs2'] = '-8,-7,-6,-5,-4,-3,-2,2,3,4,5,6,7,8' miriad.cgdisp(cgdispOpts) miriad.imstat({ 'in': '{}.i.cm'.format(src), 'region': 'box(3,3,50,125)' }) miriad.imstat({ 'in': '{}.v.cm'.format(src), 'region': 'box(3,3,50,125)' }) input("Press enter to continue...") # v/i plot cgdispOpts['slev'] = 'p,1,a,1' cgdispOpts['device'] = '{}.uncorr.perc.{}'.format( filename, devicetype) cgdispOpts[ 'in'] = '{0}.uncorrected.i.cm,{0}.v-i.perc.uncorrected'.format( src) cgdispOpts['levs2'] = '-6,-5,-4,-3,-2,-1,1,2,3,4,5,6' miriad.cgdisp(cgdispOpts) input("Press enter to continue...") else: # flux plot cgdispOpts['slev'] = 'p,1,a,{}'.format(rms) cgdispOpts['device'] = '{}.corr.{}'.format( filename, devicetype) cgdispOpts['in'] = '{0}.i.cm,{0}.v.cm'.format(src) cgdispOpts['levs2'] = '-8,-7,-6,-5,-4,-3,-2,2,3,4,5,6,7,8' miriad.cgdisp(cgdispOpts) miriad.imstat({ 'in': '{}.i.cm'.format(src), 'region': 'box(3,3,50,125)' }) miriad.imstat({ 'in': '{}.v.cm'.format(src), 'region': 'box(3,3,50,125)' }) input("Press enter to continue... ") # v/i plot cgdispOpts['slev'] = 'p,1,a,1' cgdispOpts['device'] = '{}.corr.perc.{}'.format( filename, devicetype) cgdispOpts['in'] = '{0}.i.cm,{0}.v-i.perc'.format(src) cgdispOpts['levs2'] = '-6,-5,-4,-3,-2,-1,1,2,3,4,5,6' miriad.cgdisp(cgdispOpts) input("Press enter to continue... ")