This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
hardware:phasecal [2019/05/22 06:14] Guifre [Data recorded in Flexbuff Hb] |
hardware:phasecal [2019/11/26 00:29] (current) Guifre [Data recorded in Flexbuff Hb] |
||
---|---|---|---|
Line 3: | Line 3: | ||
Recording one scan with Phase Cal ON for 19 minutes using vgos_recorder.py. Followed by another scan of just a couple of minutes with Phase Cal off for comparison. Inifile configured as: | Recording one scan with Phase Cal ON for 19 minutes using vgos_recorder.py. Followed by another scan of just a couple of minutes with Phase Cal off for comparison. Inifile configured as: | ||
- | <note># Do a test to record Phase Cal ON at different Frequencies | + | <note># Do a test to record Phase Cal ON at different Frequencies\\ |
- | [DBBC3] | + | [DBBC3] \\ |
- | dBBC3Address = 131.217.63.227 | + | dBBC3Address = 131.217.63.227 \\ |
- | dBBC3Port = 4000 | + | dBBC3Port = 4000\\ |
- | Station = Hb | + | Station = Hb\\ |
- | LOfreq = [3500, 3000, 4500] | + | LOfreq = [3500, 3000, 4500]\\ |
- | NumberOfChannels = [8, 8, 8, 8, 8, 8] | + | NumberOfChannels = [8, 8, 8, 8, 8, 8]\\ |
- | CutOffFreqA = [3200.0,3600.0,4000.0,4400.0,4800.0,5200.0,5600.0,6000.0] | + | CutOffFreqA = [3200.0,3600.0,4000.0,4400.0,4800.0,5200.0,5600.0,6000.0]\\ |
- | CutOffFreqB = [3200.0,3600.0,4000.0,4400.0,4800.0,5200.0,5600.0,6000.0] | + | CutOffFreqB = [3200.0,3600.0,4000.0,4400.0,4800.0,5200.0,5600.0,6000.0]\\ |
- | CutOffFreqC = [6400.0,6800.0,7200.0,7600.0,8000.0,8400.0,8800.0,9200.0] | + | CutOffFreqC = [6400.0,6800.0,7200.0,7600.0,8000.0,8400.0,8800.0,9200.0]\\ |
- | CutOffFreqD = [6400.0,6800.0,7200.0,7600.0,8000.0,8400.0,8800.0,9200.0] | + | CutOffFreqD = [6400.0,6800.0,7200.0,7600.0,8000.0,8400.0,8800.0,9200.0]\\ |
- | CutOffFreqE = [9600.0,10000.0,10400.0,10800.0,11200.0,11600.0,12000.0,12400.0] | + | CutOffFreqE = [9600.0,10000.0,10400.0,10800.0,11200.0,11600.0,12000.0,12400.0]\\ |
- | CutOffFreqF = [9600.0,10000.0,10400.0,10800.0,11200.0,11600.0,12000.0,12400.0] | + | CutOffFreqF = [9600.0,10000.0,10400.0,10800.0,11200.0,11600.0,12000.0,12400.0]\\ |
- | </note> | + | </note>\\ |
- | ====== Data recorded in Flexbuff Hb ====== | ||
- | mkdir /mnt/vbsPcal/ \\ | + | ====== Data processing ====== |
- | vbs_fs -n 4 -I *pcal_*2205 /mnt/vbsPcal/ \\ | + | |
- | ls -l /mnt/vbsPcal/ \\ | + | |
+ | First need to change PythonPath every-time you open a new terminal, otherwise is using DifX defaults one: | ||
+ | export PYTHONPATH=/usr/lib/python3.4 | ||
+ | cd /home/observer/PcalTests | ||
+ | I recommend using the program call screen in order to have the processing in the background. A short description on how to use screen is below: | ||
+ | |||
+ | observer@flexbuffhb DiFX-2.5.2 ~> screen YourName - You can recognise the screen later | ||
+ | observer@flexbuffhb DiFX-2.5.2 ~> screen -raAD | ||
+ | |||
+ | There are several suitable screens on: | ||
+ | 14835.pts-4.flexbuffhb (28/05/19 17:39:31) (Detached) | ||
+ | 18325.pts-4.flexbuffhb (14/05/19 13:53:38) (Detached) | ||
+ | Type "screen [-d] -r [pid.]tty.host" to resume one of them. | ||
+ | observer@flexbuffhb DiFX-2.5.2 ~> screen -raAD 18325 - Check if that is the screen you were using last!! | ||
+ | |||
+ | Commands to use inside a screen: | ||
+ | ctrl+a c - creates | ||
+ | ctrl+a p - previous | ||
+ | ctrl+a n - next | ||
+ | ctrl+a d - leaves the current screen | ||
+ | |||
+ | You should find most of the necessary files inside of the folder \\ | ||
+ | |||
+ | The processing takes 3 steps: \\ | ||
+ | 1- Running the software spectrometer to see the spectrum of the signal recorded (swspec) \\ | ||
+ | 2- Making a first estimate of the pcal measurements (calculatePcalCpp) \\ | ||
+ | 3- Running the tracking software (sctracker). \\ | ||
+ | |||
+ | 1. Take the inifile.ini that is in the directory and prepare it for the scan you want to process. There are basically 2 settings you can modify: \\ | ||
+ | Channel from 1 to 8. I did the recording with 8 channels \\ | ||
+ | |||
+ | IF from A to F. We recorded the data from the 6 boards in the dbbc3. So for a total of 6x8 channels = 48. \\ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | UseFile1Channel = 1 \\ | ||
+ | BaseFilename1 = p190522_Hb_VDIF_If000A_%fftpoints%pt_%integrtime%s_ch%channel%\\ | ||
+ | Notes: \\ | ||
+ | # Change then channel value from 1 to 8, one per channel \\ | ||
+ | # Change IF000A to A/B/C/D/E/F to cover all boards \\ | ||
+ | </WRAP> | ||
+ | |||
+ | We run the program by executing this program. If we process the 8 channels per each of the 6 files (6 IFs), You should end up with 48 spectra data files. \\ | ||
+ | |||
+ | swspectrometer inifile.ini /mnt/vbsPcal/pcal_on_2205_Hb_No0001_46227 | ||
+ | |||
+ | 2. Check the quality of the spectrum. I have written several Python scripts to provide a quick validation of the recorded data. \\ | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | // -bw sets the bandwidth \\ | ||
+ | // -f0 sets the minimum frequency to search for the peak \\ | ||
+ | // -f1 sets the maximum frequency to search for the peak \\ | ||
+ | // -p plots the output - don't put anything if you don't need \\ | ||
+ | </WRAP> | ||
+ | |||
+ | python3 checkSpectra.py p190522_Hb_VDIF_If000A_320000pt_5s_ch1_swspec.bin -bw 32e6 -f0 4e6 -f1 6e6 -p | ||
+ | python3 calculatePcalCpp.py p190522_Hb_VDIF_If000A_320000pt_5s_ch1_swspec.bin -bw 32e6 -f0 4.9e6 -f1 5.1e6 | ||
+ | |||
+ | |||
+ | The calculatePcalCpp will provide a set of polynomials that will be used for the tracking software to study the Phase Cal tone. Example: \\ | ||
+ | |||
+ | -rw-r--r-- 1 observer observer 75 May 23 12:07 p190522_Hb_VDIF_If000A_320000pt_5s_ch1.poly2.txt | ||
+ | -rw-r--r-- 1 observer observer 50 May 23 12:07 p190522_Hb_VDIF_If000A_320000pt_5s_ch1.X1cfs.txt | ||
+ | -rw-r--r-- 1 observer observer 34558 May 24 13:23 Fdets.cal2019.05.22.Hb.ifA.ch1.r0i.txt | ||
+ | |||
+ | 3. Configure and run sctracker \\ | ||
+ | |||
+ | Edit inifileHb and modify the following fields \\ | ||
+ | # Input file . InputSource = /mnt/vbsPcal/pcal_on_2205_Hb_No0001_46227 \\ | ||
+ | # Here you select channel 1 to 8 UseChannel = 1 \\ | ||
+ | # Select Cpp text file . PhasePolyCpmFile = p190522_Hb_VDIF_If000A_320000pt_5s_ch1.poly2.txt \\ | ||
+ | # Select Cpp text file . PhasePolyCppFile = p190522_Hb_VDIF_If000A_320000pt_5s_ch1.poly2.txt \\ | ||
+ | # Output file name . . BaseFilename = p190519_Hb_VDIF_If000A_%fftpoints%pt_%integrtime%s_ch%channel% \\ | ||
+ | |||
+ | Run the sctracker as: | ||
+ | sctracker inifileHb | ||
+ | |||
+ | Once sctracker has finished, which can take several hours, it produces several output files. The most important one is \\ | ||
+ | p190519_Hb_VDIF_If000A_3200000pt_5s_ch1_tone0.bin \\ | ||
+ | |||
+ | Once it has finished please remove the scscec.bin because it is very large and we better save some storage space. \\ | ||
+ | rm p190519_Hb_VDIF_If000A_3200000pt_5s_ch1_scspec.bin \\ | ||
+ | |||
+ | Next step will be to run tone file into the PLL script. | ||
+ | |||
+ | ===== WHAT TO DO?? ===== | ||
+ | |||
+ | 1. Process all 6 scans (3 IFs x 2 pols) and extract the spectra for each channel. We will have 48 spectra at the end.\\ | ||
+ | 2. Calculate the Polynomials for one of the phase cal at the beginning of the band, the tone at f=5 MHz.\\ | ||
+ | 3. Run sctracker (48 times) for each spectra. \\ | ||
+ | |||
+ | 4. To decide if we want to repeat with another cal tone at the end of the frequency band, f=25 MHz (?) | ||