Typical DGS run procedures

From GammaSphere DAQ
Jump to navigation Jump to search

Typical run procedure

Directory Structure

Traditionally you will have a directory structure as


You can make this directory structure in two ways:

Option1 (preferred):

 cd to /dk/fs2/dgs
 tar -zxvf dgs_template.tgz
 mv template gsfmannn
 cd gsfmannn

where nnn is the run number. You now have a directory with all you should need. To make sure things are up to date, you should

 (cd GEBSort; git pull)
 (cd GEBSort; make -B)
 (cd trackMain; git pull)
 (cd trackMain; make -B)

Option2 (manual):

you can checkout the software as

 git clone https://gitlab.phy.anl.gov/tlauritsen/trackMain.git 
 (cd trackMain; make -B)
 git clone https://gitlab.phy.anl.gov/tlauritsen/GEBSort.git 
 (cd GEBSort; make -B)

This creates the two directories: trackMain and GEBSort. Even though DGS does not need the tracking code, it is best to create it and make the links below

 # make links to the crmat files which we keep in trackMain
 # but are needed here as well for GEBSort
 (cd GEBSort; rm GANIL_AGATA_crmat.dat; ln -s ../trackMain/GANIL_AGATA_crmat.dat GANIL_AGATA_crmat.dat)
 (cd GEBSort; rm GSI_AGATA_crmat.dat; ln -s ../trackMain/GSI_AGATA_crmat.dat GSI_AGATA_crmat.dat)
 (cd GEBSort; rm crmat.LINUX; ln -s ../trackMain/crmat.LINUX crmat.LINUX)

This option does not create all the directories and script files you need.

Acquire and Sort Data

To acquire the data, cd to the 'data' directories in individual virtual screens and do:

 start_run.sh 123

To merge the data from a run, in the same directory, type

 gebmerge.sh 123

That will take the run 123 files in the data directory and make a merged file in the Merged directory and the log file in the LOG_FILES directory It is best to do that on another machine to not upset the receivers.

Before the sort, you should look at the GEBSort.chat file. Lines you may need to change are

 beta        0.0
 dgs_MM      350
 dgs_PZ      dgs_pz.cal
 dgs_ecal    dgs_ehi.cal

The cal files are the calibration files. See below for how to generate them. If you have the tape-station, you should also add these lines

 # Parameters for tape station/beta decay
 # At least one must be enabled for tape 
 # station spectra to be generated.
 # beta-gamma coincidence window
 decay_station_bg  -10    40
 # max time bt gammas in decay station 2D matrices
 decay_station_ggdt 20
 # gg decay time gate
 # the time window in which we see decays vrt to last tape move
 decay_station_gt1  10    617
 decay_station_gt2  620   892
 decay_station_gt3  1000 3000

A number of extra 1D and 2D spectra will then be produced. If they are commented out, only the usual bin_dgs spectra will be produced.

To sort the data, cd to the GEBSort directory and

 gebsort.sh 123

The root file will be placed in the ROOT_FILES directory as run123.root To look at the root file, you would do


Calibrations for bin_dgs in GEBSort_nogeb

GEBSort_nogeb is the program that can analyze data from DGS, DFMA and GRETINA. This is how you set up the code:

To produce the PZ spectra and 2D [sum2-sum1] vs [sum1] matrices needed to determine the PZ fudge factor (FF) you must enable

 #define ALL2DS 1

in bin_dgs.c and recompile . We do not always want these spectra as they take up a lot of space, but for now we need them

You now specify the PZ and ecal files in the GEBSort.chat file with these lines:

 dgs_MM      350
 dgs_PZ      dgs_pz.cal
 dgs_ecal    dgs_ehi.cal

Before you start sorting data, you need to check that the map.dat file is up to date and reflects the array as it is configured.

For DGS data, enable bin_dgs in the GEBSort.chat file. To find the PZ values to use, sort some data from a 207Bi source. Then extract the pz spectra in .spe format with the get_pz.cc script

  GEBSort_nogeb ....
  .x get_pz.cc

Now run (you may have to compile):

  dgs_pz 350 141 dgs_pz.cal 1.003

where 350 100 are the M and K values you find in the runxx.save file. Specify the values in 10 nsec units. In this case I saw these lines in the .save file:

 caput GLBL:DIG:d_window 0.06   
 caput GLBL:DIG:k_window 0.20     
 caput GLBL:DIG:m_window 3.50
 caput GLBL:DIG:k0_window 0.80
 caput GLBL:DIG:d3_window 0.20
 caput GLBL:DIG:raw_data_window 0.32
 caput VME01:SDIG1:k0_window0 0.0
 caput VME01:SDIG1:k0_window1 0.0

for the K value: sum up all the K and D values, in this case: 0.06+0.20+0.80+0.20 = 1.26 us or 126 in 10 nsec units. Notice that what is considered the K value also includes the D values (per SZ 6/25/18) as well as a D2 which is fixed at 0.15 (per JTA 6/26/18) and not in the listing above because the user cannot set it. Thus, in total, K in this example is 1.41 us or 141 in 10 ns units. The M value is 3.50 us or 350 in 10 nsec units. The 1.003 is a modification factor that needs to be determined by looking at energy vs baseline spectra.

 you already specified the M value in GEBSort.chat

After you executed dgs_pz, a d_pz.cmd file was generated. Use that cmd file in gf3 to check the pz spectra. Some might be really bad and dgs_pz might not have been able to find a good PZ value. If that is the case, to get around this problem, you may set the PZ for these detectors to the average value of the ones that had good PZ spectra. You would simply edit the dgs_pz.cal file.

Now, after the PZ file is generated, remove the energy calibration file if there is one:

 rm dgs_ehi.cal

so that the calibrations defaults to 0 and 1 for offset and gain and sort again using the new pz values that were extracted above. When you resort, the PZ values in dgs_pz.cal are read in and used. Extract the new clean, uncalibrated, ehi spectra as

  .x get_ecln.cc

and run the calibration program (you may have to compile first)

  dgs_ecal dgs_ehi.cal 207Bi 600 1.0

you can also use "88Y", "60Co" for the source. The calibration (last parameter) will in this case be 1keV/ch. The second last parameter specifies the lowest channel the program will search for peaks in to avoid any noise and x-rays at low energies.

Next when you run GEBSort_nogeb, both the new PZ values in dgs_pz.cal and the gain and offset values in dgs_ehi.cal are read in and used. Take a good look at the spectra. Sometimes the dgs_pz and dgs_ecal programs can be fooled by noise or strange features in the spectra, so a few PZ and ecal parameters might have to be specified by hand.

The energy processing in bin_dgs follows algorithms that were developed by Shoufei Zhu.