data taking examples
18apr22
Links
recombination line
spectra using on off position switching
mapping the sun at
xband
continuum mapping of
SGRA* at xband using the winking cal
pulsar data taking
recombination lines spectra using
on,off position switching
Look at recombination lines at xband (8200
to 9200)
the lines in the band are:
#
H
C
#89a 9173.320653 9177.897014 MHz
#90a 8872.568216 8876.994538
#91a 8584.820642 8589.103413
#92a 8309.382525 8313.527887
Mock setup:
- 4 lines so 4 mock boxes/bms
- spectral resolution 26 KHz
- use 160 MHz clock and bw divisor of 3 for bandwidth of 53
MHz
- The spectra are complex baseband so there is a dc spike in
the middle
- offset the center of each band by +5 Mhz from the line
rest frequencyss
- 1Mhz offset at 8600 rest freq is 35 Km/sec so 5Mhz
=165km/sec..
- so we don't need to worry about the doppler shift
pushing the line onto dc
- Note:
- The mocks have a 16bit counter to count how many spectra
to accumulate
- You can not accumulate more that 64k spectra
- (integrationTime)/(time1spectra) must be < 64K ..
time1spectra =fftlen/bandwidthUsed
RCVR/Freq setup
- use xband, map each line to a different mock
- All our frequencies are topocentric (you can do the
doppler correction offline)
All of this can be put in the command file to use
The tcl command file
Put the file in your project directory:(/share/obs4/usr/"your
project id"
For the example lets call it : recomblines_xb.tcl
#
# command file for xband spectral line on/offs for
recombLine
#
set rcvr wb6 ;# xband
filter
#
#
H
C
#89a 9173.320653 9177.897014 MHz
#90a 8872.568216 8876.994538
#91a 8584.820642 8589.103413
#92a 8309.382525 8313.527887
#
# We've set the band center 5Mhz below the restFreq of
the Line to stay away
# from the DC spike at the center of the band.
#
set freq "9168.32 8867.57 8579.82 8304.38"
;# topocentric cfr each band
#
set clock 160
;# MHz clock =bandwidth since complex
sampling
set bwdiv 3
;# bandwidth divisor. each box
160/3=53.333 MH
set nchan 2048
;# 2048 freq chan over 53.33 Mhz
#
if { [recombsetup $rcvr $src $freq $clock $bwdiv $nchan]
!= 1 } {return 0} ;# head out
#
# our source file should be in proj directory
#
srcfile recomb.cat
#
# move to the first source then adjust the mock levels
#
srcget W3
pnt tr $ra $dec
#
# wait to be on source..
#
waittrk tmI 1
#
# check the if2 power levels
#
if2mp
#
# set the mock levels to 30 a/d counts=1sigma
#
mockadjpwr 30 reply
#
# loop 2 5min on,offs
#
set toloop 2
#
# 1st src
#
onoff $ra $dec $toloop
#
# 2nd source
#
srcget M42A
onoff $ra $dec $toloop
#
# 3rd source
#
srcget M42B
#
onoff $ra $dec $toloop
#
# turn off the motors
#
When it is time to observe
- log into the vnc data taking session and (more
info)
- check the lst time to see if your sources are up
- look at 12meter pointing request window.. it has the
current lst
- Or enter lst .. it will return the current
lst as hhmmss.ss
- start the observation
- you should start to see messages on the screen with
the file number, pattern id, etc..
- Stopping prematurely
- A ctr-c will abort the tcl session (tcl doesn't support
signals) . This needs to be fixed...
- while the mocks are taking data you can stop things with
- mockstop
- this will kick you back to the interactive prompt
- If you are stuck waiting somewhere else, you'll probably
need to ctr-c and restart tcl (startp12m)
- when your script finishes
- you should cleanup for the next user
- exit from the tcl (% prompt) window (exit)
- exit your idl session
- if monitoring
- space bar to bring up the menu
- q
- then exit idl (exit)
- then kill the vnc window (x in upper right of window)
Online monitoring with idl
You can use idl to monitor the data as it is
taken (either online or offline)
- idl
- (if offline and you haven't setup your IDL_STARTUP file
- To monitor the spectra
- To monitor using a total powers strip chart
- masmonstripch
- ignore any errors like:
- Error openning
file:sun.20220422.b0s1g0.00900.fits
No rows in file:
- Idl had opened the file before data taking has
written it.. it will catch up.
mapping the sun at xband
--> warning the current filter in the dewar will probably let
the sun saturate the lna.
There is a canned tcl procedure to map
the sun at xband (mapsun)
It will:
- map specs:
- 2deg x 2deg in ra, dec (great circle angles) centered
on the sun,
- a jpl horizons ephemeris file is automatically downloaded
for a day.
- drive in ra, step in dec
- 60 secs/ra strip. rate=2deg/60sec=.033 deg/sec or 2
Amin/sec
- fwhm at xband is 10amin so it moves 1 bm in 5
seconds.
- each strip steps 5 Amin in dec (the fwhm at xband is
10Amin)
- There are 25 strips in total with the middle strip going
through the center of the sun.
- There are 10second calOn,calOffs done
- at the start of the map (offset -1deg ra, -1deg dec)
- at the end of the map (offset +1deg ra, +1deg dec)
- Data taking setup:
- 7 172.032 Mhz freq bands are taken using 7 mocks
spectrometers (bm 0..6)
- band freq centers:
- 8219. 8363. 8505. 8647. 8789. 8931. 9073. MHz
- 142 Mhz spacing between bands (expect 1st two which is
144Mhz)
- 8192 freq channels/per 172 Mhz band
- 1 second spectral integrations.
- The a/d levels are set on the sun so they have 100 a/d
voltages counts for 1 sigma (12bit a/d's)
- The data are written to ao fits files.
- Each strip will have 7 files. (Each freq band is written
to a separate file)
- The file number for these 7 files will be the same
- the file number for consecutive strips increments by 100..
eg strip1 : 00200, strip2 00300,...
The tcl command file
Put the file in your project
directory:(/share/obs4/usr/"your project id"
For the example lets call it : 220519_sun.tcl
A command file to make 2 maps of the sun would have:
chknewday
mapsun 2
pntpwroff
When it is time to observe
- log into the vnc data taking session and (more
info)
- start the observation
- you should start to see messages on the screen with the
file number, pattern id, etc..
- 2022-04-21_10:58:48 if2mp: -29.43 -30.22
2022-04-21_10:58:48 if2mp on sun: 1 -29.43 -30.22
2022-04-21_10:58:52 mockadjpwr:
b0s1g0 rms:A 104.9 100.2 B 101.7
106.3 mn:A 0.3 0.4
B 1.0 -1.7 gn: 6 6
b1s1g0 rms:A 101.3 93.4 B
100.2 98.7 mn:A -5.3 10.8
B -7.7 -1.9 gn: 1 2
b2s1g0 rms:A 103.2 102.9 B
98.3 91.2 mn:A 0.6
0.3 B -0.7 0.1 gn: 9 5
b3s1g0 rms:A 106.1 104.2 B
103.4 107.2 mn:A -0.2 -0.3 B
-0.7 0.1 gn: 4 4
b4s1g0 rms:A 105.3 97.4 B
101.1 95.2 mn:A
0.5 2.1 B -0.1 -0.9 gn:
11 16
b5s1g0 rms:A 97.6 96.5
B 105.8 105.0 mn:A 0.4
0.4 B -1.4 1.2 gn: 10 12
b6s1g0 rms:A 104.5 92.2
B 99.6 99.6 mn:A -0.8
-0.4 B -0.7 0.8 gn: 14 16
2022-04-21_10:58:52 mapradec: start.
pattern_id:211100002
2022-04-21_10:58:52 src: ra,dec: 15611.20 115304.30
rate:119.67 strip1:1 numStrips:25 code:0x48
2022-04-21_10:58:56 mockcalonoff: start. pattern_id
211100002
2022-04-21_10:58:57 Mock scan starting
filenumber:00000
2022-04-21_10:59:00 Observation begins Thu Apr 21
10:59:00 2022. scan:211100002
2022-04-21_10:59:11 Scan 211100002 completed.
2022-04-21_10:59:13 Mock scan starting
filenumber:00100
2022-04-21_10:59:16 Observation begins Thu Apr 21
10:59:16 2022. scan:211100003
2022-04-21_10:59:27 Scan 211100003 completed.
2022-04-21_10:59:27 mockcalonoff: done
2022-04-21_10:59:28 1 211100004
offsets: -404.397 -10000.000 start:105932
2022-04-21_10:59:29 Mock scan starting
filenumber:00200
2022-04-21_10:59:32 Observation begins Thu Apr 21
10:59:32 2022. scan:211100004
2022-04-21_11:00:33 Scan 211100004 completed.
- The if2mp power reading should be around -30 (dbm)
- the mockadjpwr should have rms's around 100 with gain values
(last col) as shown
- The id for the map is pattern_id:211100002
- The first 2 scans (filenumber 00000, 00100 ) are the cals
- The first strip is filenumber 00200
- Stopping prematurely
- A ctr-c will abort the tcl session (tcl doesn't support
signals) . This needs to be fixed...
- while the mocks are taking data you can stop things with
- mockstop
- this will kick you back to the interactive prompt
- If you are stuck waiting somewhere else, you'll probably
need to ctr-c and restart tcl (startp12m)
- when your script finishes
- you should cleanup for the next user
- exit from the tcl (% prompt) window (exit)
- exit your idl session
- if monitoring
- space bar to bring up the menu
- q
- then exit idl (exit)
- then kill the vnc window (x in upper right of window)
Online Monitoring
- You can monitor the total power of the map strips with idl
- idl
- (if offline and you haven't setup your IDL_STARTUP file
Mapping SGRA* at xband with winking cal
Make a map of SGRA* at xband using the winking
cal (more
info on why to use winking cal). This is to generate a
continuum map.
The setup :
Rcvr setup:
- Use the xband filter wb6 8050 to 9200 Mhz).
- The IF has a 1 GHz bandpass filter so limit the freq span to 1
GHz
- the Mock spectrometers have a max bandwidth of 172.032 Mhz.
- Use 7 freq bands (mocks) spaced by 142 MHz (so the bands
overlap a little)
- Set 7 band center freq to:
- 8219.00 8363.00 8505.00 8647.00 8789.00 8931.00 9073.00 MHz
- These are topocentric frequencies. Any doppler shift
can be done offline.
- Note that the spacing 1st to 2nd band is 144 Mhz .. so
the center of the band is 8646 MHz)
Mock setup:
- 7 mock boxe(bms), each 172.032 MHz bandwidth
- 512 freq chan/spectra -> .336 Mhz Resolution ->11.7
Km/Sec at 8600 Mhz.
- dump the spectra at 2 milliseconds.
- The hardware winking cal is 20millisecOn, 20millisecond
off. (25Hz)
- We want to sample fast enough so we can discard the
spectral dumps around the cal transitions.
- 2ms sampling -> 10 spectra/calOn, 10spectra/caloff
- dropping a sample before after transition gives 8
samples/calOn, 8 samples/caloff (16 millisecson, 16
millisecs off)
- Use 16 bits spectra (instead of 32 bit) to keep the i/o rate
down.
Pointing setup:
- the xband beam is 10 arc Minutes (Amin)
- make the map 2deg x 2 deg in rightAscension(ra) and
declination(dec)
- make the ra length 2deg great circle (divide by cos(dec))
- use the mapradec routine to make the map
- drive in ra, step in dec
- make dec steps 1/2 bm = 5Amin
- spend 60 seconds for each ra strip
- 2deg=120Amin/60sec = 2Amin/sec or 5 seconds/beam
- The calcycle is 25Hz=40millisecs. if we average over a
calcycle (offline) then we have 25*5=125 samples/beam.
- drive in both ra directions.
- ra strip 1 is -raOff to + raOff
- ra strip 2 is +raOff to - raOff ....
- Since we use the winking cal, there will be no separate
calOn,calOff scans.
- The source file.
- SGRA is in the default source file. It is setup for you when
you start tcl.
- If your source is not in the standard file then you can
generate our own source file and put it in your project
directory (more
info).
The tcl command file:
The commands to run the experiment can
be put in a tcl command file.
- For this example use map_sgra_xb.tcl
- Place the command file in your project directory
- project directories are under /share/obs4/usr/p12m/"proj"
- Make sure the command file is public writeable:
- chmod 0666 map_sgra_xb.tcl
- you created the file offline as yourself. Online you will be
p12m. This will allow you to edit the file online.
Here is the command file
#
# Example command file for winking cal map of SGRA*
# - at xband 2degx2deg in raxdeg (great circle0
#
set src SGRA
# get the source Coordinates
srcget $src
#
# parameters for setup routine
# - these are actually the defaults so you could just
call setupwcalmap by itself
#
set nchan 512
set integms 2
set boxes 1234567
set clock 172.032
#
# setup if/lo mocks
#
setupwcalmap $nchan $integms $boxes $clock
#
# map parameters
#
set bmWidthAmin
10 ;# FWHM for xband beam
set stripLenAmin 120 ;#
2deg=120 Amin
set stripTmSecs
60 ;# 60 secs for each ra strip
#
# starting offsets for map
#
set raOffAmin [expr -$stripLenAmin/2]
set decOffAmin [expr -$stripLenAmin/2]
# dec step
set decStepAmin [expr $bmWidthAmin/2.]
# code is used by mapradec . see mapradec
documentation.
# it is a bitmap. Each bit means something
# by default the ra strip is a great circle
length.
#
set BadjPwr 0x80 ;# Bit for
adjust mock power at start
set Bwcal 0x100 ;# Bit
for using winking cal
set code [expr $BadjPwr|$Bwcal] ;# or the bits
together
#
# call the mapping routine
# ra,dec are global variable set when calling
srcget
#
mapradec $ra $dec $code $stripTmSec $raOffAmin
$decOffAmin $decStepAmin
#
pntpwroff ;# turn off motors when done
End of command file
When it is time to observe
- log into the vnc data taking session and (more
info)
- check the lst time to see if your source is up
- To get the current lst
- look at 12meter pointing request window.. it has the
current lst
- Or enter lst .. it will return the
current lst as hhmmss.ss
- get your rise,set times for your source.
- If not using the default source file...
- srcfile "name of your source file"
- srctimes
- this will list each source ra dec lstRise lstSet
- start the observation
- you should start to see messages on the screen with
the file number, pattern id, etc..
- Stopping prematurely
- A ctr-c will abort the tcl session (tcl doesn't support
signals) . This needs to be fixed...
- while the mocks are taking data you can stop things with
- mockstop
- this will kick you back to the interactive prompt
- If you are stuck waiting somewhere else, you'll probably
need to ctr-c and restart tcl (startp12m)
- when your script finishes
- you should cleanup for the next user
- exit from the tcl (% prompt) window (exit)
- exit your idl session
- if monitoring
- space bar to bring up the menu
- q
- then exit idl (exit)
- then kill the vnc window (x in upper right of window)
Online Monitoring
You can use idl to monitor the data as it
is taken (either online or offline)
- idl
- (if offline and you haven't setup your IDL_STARTUP file
- To monitor the spectra
- To monitor using a total powers strip chart
- masmonstripch
- ignore any errors like:
- Error openning
file:sun.20220422.b0s1g0.00900.fits
No rows in file:
- Idl had opened the file before data taking has
written it.. it will catch up.
Processing the map offline
see processing a 12meter winking cal
map.
Pulsar data taking example.
There are two different ways to do a pulsar
observation
- psrsetup,psrtakedata
- psrsetup will
set things up for your observation
- psrtakedata will
take the data
- you then repeat these two call for the next pulsar
- psrdolist
- generate a list of pulsars and parameters for the
observation
- call psrdolist with this list .. it will cycle through all
the entries
- to be documented...
The pulsar data taking can be done at sband or
xband. Some parameters are automatically set (in psrsetup)
depending on the receiver.
- Parameters common to both receivers.
- 16 bit spectra
- polA and polB are not added together.
- psrfits output data files
- The bandwidth for each mock spectrometer is set to 172.032
MHz
- Xband observing
- The receiver name is wb6
- 7 mock spectrometers will be used
- The topocentric center frequency (MHz) for each band are
fixed at:
- 8219.84 8360.96 8502.08 8643.20 8784.32 8925.44 9066.56
- These bands are separated by 141.12 Mhz
- if using 256 channels ( you can change this with psrsetup)
- the channel width is 172.032/256 = .672 MHz
- There are exactly 210 freq channels between band centers
(if combining all bands to 1)
- If you use 64 channels or less the spacing between band
centers is no longer integral.
- Sband observing
- The receiver sband filter name is wb3
- The RF filter goes from 2775-3475 MHz (filter
s-parameters)
- 5 mock spectrometers are used
- the 172.032 mhz bands are centered at:
- 2846.152 2909.32 3050.88 3192.44 3334.0 Mhz
There are some constraints imposed by the mock spectrometers:
- You must integrate at least 4 spectra (ffts)
- The mock computes spectra of fftlen channels.
- The time for 1 fft is fftlen*1/bw (where bw is the
requested bw .. this includes the bandwidth divisor)
- When specifying the integration time, it must be at least 4
fft times long
- eg. let fftlen=256, bw=172.032e6
- 1 fftime=256/bw = 1.4881 useconds.. so you must integrate
at least 4*1.4881=5.954 Usecs
- You need to keep the i/o rate (per mock board)
to below 64KBytes/seconds
- The ioRate = fftlen*2*2/integrationTime
- The 2's: 2 bytes/spectral channel, 2 pols
- if 256 freqChannels (fftlen), Integration time=32usecs
- iorate=256*4/32e-6=32 MBytes/second
- You should also check that there is enough disc
space on the pdevs (df -h
/share/pdata(n)/pdev ... n=1..7
- 10 minutes of 32MBytes/sec=19.2 GBytes
Pointing setup
You need to generate a source catalog with
your sources (or use one of the defaults) (more
info)
The tcl command files:
The commands to run the experiment can
be put in a tcl command file.
pulsar data taking using psrsetup, psrtakedata
- For this example use 220428_test.tcl
- Place the command file in your project directory
- project directories are under /share/obs4/usr/p12m/"proj"
- For the summer school use sspsr
- Make sure the command file is public writeable:
- chmod 0666 220428_test.tcl
- you created the file offline as yourself. Online you will be
p12m. This will allow you to edit the file online.
- Do 3 pulsars: B0329+54 ,J0437-4715 and B0833-45 (VELA)
Here is the command file
# sband pulsar observations of
B0329,J0437-4715 and B0833-45 (VELA)
#
#source
ra
dec lstRise lstSet
#
hhmmss ddmmss
hhmmss hhmmss
#B0329+54
033259.4 543443.3 202842
104034
#J0437-4715 043715.9
-471509.1 004154 083351
#B0833-45 083520.6
-451034.9 043224 123946
#
# you could start around 5hrs lst
#
srcfile src.cat
#
# common params for 3 pulsars
#
set rcvr wb3
set secsCal
90 ;# winking cal for 90 seconds
set nchan
256 ;# 256 freqchannels over
172Mhz
#
# B0950+08
#
set src B0950+08
set integms
.200 ;# .2 millisec (200 usec dumps)
set secsDat
1800 ;# 1800 secs = 30 minutes
psrsetup $rcvr $src $integms
$nchan
psrtakedata $secsDat $secsCal
#
# J0437 (5 millisec period, sample faster)
#
set src J0437-4715
set integms
.032 ;# .032 millisec= 32usecs.=
156 phase bins across period
set secsDat
900 ;# 900 secs = 15minutes =
28GBytes
psrsetup $rcvr $src $integms
$nchan
psrtakedata $secsDat $secsCal
#
# B0833-45 vela
#
set src B0833-45
set integms
.200 ;# .2 millisec (200 usec dumps)
set secsDat
1800 ;# 1800 secs = 30 minutes
psrsetup $rcvr $src $integms
$nchan
psrtakedata $secsDat
$secsCal
#
# turn off the motors when done
#
pntpwroff
;# turn off the motors when done
End of command file
pulsar data taking example using psrdolist
You generate a list of pulsars to
observe with their observing parameters and then call psrdolist with
this list.
psrdolist will wait for the lst time to be between the lstFirst
and lstLast times specified in the list entry.
It will then call psrsetup and psrtakedata (so all
the comments on psrsetup also apply here).
- For this example use 220428_test.tcl
- Place the command file in your project directory
- project directories are under /share/obs4/usr/p12m/"proj"
- For the summer school use sspsr
- Make sure the command file is public writeable:
- chmod 0666 220428_test.tcl
- you created the file offline as yourself. Online you will be
p12m. This will allow you to edit the file online.
- Put 5 pulsars in the list, but skip the last one.
Here is the command file
# sband pulsar observations of B0329 and vela
#
# skip
psrname lstFirst lstLast rcv integms
nchan secsCal secsDat
set slist {
{
B0329+54 222800 084000
wb3 .2000 256
90 1800 }
{
J0437-4715 024000 063000 wb3
.032 256
90 900 }
{
B0950+08 060000 134000
wb3 .2000 256
90 1800 }
{
B0833-45 060000 113000
wb3 .2000 256
90 1800 }
{ skip B1641-45
144500 184700 wb3
.2000 256
90 1800 }
}
#
srcfile src.cat
psrdolist slist
pntpwroff
End of command file
When it is time to observe
- log into the vnc data taking session and (more
info)
- check the lst time to see if it is time start..
- To get the current lst
- look at 12meter pointing request window.. it has the
current lst
- Or enter lst .. it will return the
current lst as hhmmss.ss
- get your rise,set times for your source.
- If not using the default source file...
- srcfile "name of your source file"
- srctimes
- this will list each source ra dec lstRise lstSet
- It is better if you wait awhile after the lstRise time
before starting.
- At lstRise the telescope is sitting at elevation =5.8
deg.. where it gets a lot of ground radiation.
- start the observation
- you should start to see messages on the screen with the
file number, pattern id, etc..
- Stopping prematurely
- A ctr-c would abort the tcl session (tcl doesn't support
signals) . This needs to be fixed...
- while the mocks are taking data you can stop things with
- mockstop
- this will kick you back to the interactive prompt
- If you are stuck waiting somewhere else, you'll probably
need to ctr-c and restart tcl (startp12m)
- when your script finishes
- you should cleanup for the next user
- exit from the tcl (% prompt) window (exit)
- exit your idl session
- if monitoring
- space bar to bring up the menu
- q
- then exit idl (exit)
- then kill the vnc window (x in upper right of window)
Online Monitoring
- You can monitor the dynamic spectra while taking data with
idl.
- idl
- (if offline and you haven't setup your IDL_STARTUP file
- if online, this is done for you
- psrfmonimg
-
- Notes on psrfmonimg
- If you start a different pulsar with different observing
parameters
- You should probably:
- space bar
- q
- then restart psrfmonimg
- Since the display window is configured to the number
of spectra in a row, and fre chan in a spectra.
- it will probably keep up with lower data rates
(5MBytes/sec).
- for millisecond pulsars 16MBytes/sec on.. the display
will fall behind
- use space bar, list to get the last file index then
fnum index .. to skip ahead
- --> this monitoring is reading from the same discs
that the mocks are writing to.
- I'd try and keep the monitors to just one copy.. so
you don't disturb the data writing.
<-
page
up
home_~phil