# znod1Cal # # Single-beamswitch observing for calibrator sources # # with setup from config-totpwr # 2011.11.10 AH # # *** This script uses subreflector nodding. cata = Catalog(""" coordmode=J2000 3C48 01:37:41.3 33:09:35 3C138 05:21:09.9 16:38:22 3C147 05:42:36.1 49:51:07 3C286 13:31:08.3 30:30:33 catp = Catalog("/home/astro-util/astridcats/kaband_pointing.cat") # *** Define target source by uncommenting one zpectsource: #zpectsource="3C48" #zpectsource="3C138" #zpectsource="3C147" zpectsource="3C286" # *** Set up parameters of subreflector nodding... # ... number of subreflector nod cycles (can be modified): # ... integration time in units of zpNodCycSR seconds: # 6 -> 1 minute with zpNodCycSR = 10 # 24 -> 4 minutes with zpNodCycSR = 10 zpNumNodSR=6 # *** DO NOT MODIFY ANYTHING BELOW # # ... duration of a subreflector nod cycle, in seconds (can be modified): zpNodCycSR=10.0 # ... number of Zpectrometer dumps per nod cycle (please don't modify): zpDumpPerNod=14 # ... duration of a subreflector move, in seconds (do NOT modify): MoveTimeSR=0.5 # ... duration of a Zpectrometer readout, in seconds (do NOT modify): zpReadTime=0.01152 # ... number of Zpectrometer readouts per dump (do NOT modify): zpReadPerDump=round((zpNodCycSR/zpReadTime)/zpDumpPerNod,0) # ... total number of Zpectrometer dumps (do NOT modify): zpRepeat=zpNumNodSR*zpDumpPerNod # ... dump time, in seconds (do NOT modify): zpExposure=zpReadPerDump*zpReadTime # ... skew of Zpectrometer dump, in seconds (do NOT modify): zpWait=round(1000.0*(zpExposure - (zpExposure-MoveTimeSR)/2.0),0) SetValues("Zpectrometer",{"exposure":zpExposure}) SetValues("Zpectrometer",{"repeat":zpRepeat}) SetValues("Zpectrometer",{"wait":zpWait}) SetValues("Zpectrometer",{"state":"prepare"}) # Editied and added from config-totpwr 11/09/11 AH # *** Comments from fall 2006: # *** The only paramaters which matter are # *** receiver, beam, vframe, and vdef. # *** The restf requency should be left at 36000. # *** Combined with the IF center, this gives # *** LO1A commanded = 14.6167. Configure(""" receiver = 'Rcvr26_40' beam = 'B1' obstype = 'Continuum' backend = 'DCR' nwin = 1 restfreq = 36000 deltafreq = 0 bandwidth = 800 swmode = "sp" swtype = "bsw" swper = 0.2 swfreq = 0.0, 0.0 tint = 10 vlow = 0 vhigh = 0 vframe = "topo" vdef = "Radio" noisecal = "L" pol = "Circular" """) SetValues('Rcvr26_40', {'diff1_bypassHybrid': 'swOn', 'sum1_bypassHybrid': 'swOn', 'diff1_toZpectrometer': 'swOn', 'sum1_toZpectrometer': 'swOn'}) SetValues('Rcvr26_40',{'calState':'ctlZpectrometer','phaseModState':'ctlZpectrometer'}) SetValues('Rcvr26_40',{'sigRefd1PhaseSwitch':'swOn','sigRefs1PhaseSwitch':'swOn'}) SetValues('Rcvr26_40',{'state':'prepare'}) SetValues('LO1',{'ifCenterFreq':7850,'S8':4}) SetValues('LO1',{'loConfig':'TrackA_BNotUsed','testToneFreq':12000}) SetValues('LO1',{'testTonePowerLevel':-110}) SetValues('LO1',{'state':'prepare'}) SetValues("ScanCoordinator", {"subsystemSelect,Zpectrometer": 1, "subsystemSelect,DCR": 0}) SetValues("ScanCoordinator", {"subsystemSelect,IFRack": 0, "subsystemSelect,SwitchingSignalSelector": 0}) SetValues("ScanCoordinator", {"state": "prepare"}) SetValues("Zpectrometer",{"state":"on"}) # *** Uncomment the next line if you want to produce raw tpr files: #SetValues("Zpectrometer",{"genericKeyword,key":"diagout", "genericKeyword,value":"true"}) # *** Uncomment the next line if you do NOT want to produce raw tpr files: SetValues("Zpectrometer",{"genericKeyword,key":"diagout", "genericKeyword,value":"false"}) SetValues("Zpectrometer",{"state":"prepare"}) # end addition of 11/9/11 # *** Execute the fast subreflector nodding command. # *** MR12 means refers beam offsets to midpoint between beams 1 & 2. # *** SubNod argument should be half of full subreflector nod cycle. Track(zpectsource,None,zpNodCycSR*zpNumNodSR,"MR12",submotion=SubNod(zpNodCycSR/2.0))