bgocal - Tcl/Tk script help
please note: this file was generate by make_tcl
from the file: bgocal.hlp. Please update that file
and regenerate the bgocal.html. Do not update the bgocal.html file directly!
The BGO calibration procedure is described in some details in the following help entries. The normal procedure is to first down-load the current BGO high voltages, they will stored in the file "hv.dat", then to switch off the high voltage on either the ODD tubes or the EVEN tubes (so only one tube is switched on per BGO crystal). Data can now be acquired into either the ODD or the EVEN matrices, according to which set of the tubes have high voltage on them. This is done by selecting the appropriate ACQ button. By a click on the "find voltages" button, new voltages are calculated and stored (updated) in the "bgo.hv" file. The voltages in this file can be up-loaded (put) to the VXI Ge/BGO cards to make the calibration effective by pushing the "put BGO high voltages" button.
NOTE: the source used in this calibration is always the 137Cs single line source (661.61 KeV). A higher energy single line source would be desirable but is not readily available. The calibration involves use if 2D matrices so only a range of detectors can be analyzed at a time since a finite amount of memory is available on the workstations.
The trigger should be (255,255,255;1,1,1); I.e., using the module trigger.
NOTE: make sure the software multiplicy requirement is set to ZERO CLEAN DETERTORS or you will see very few of the dirty germanium events that we need in this analysis. This point is very easy to forget because the multiplicity requirement is usually set to 1 when sources are in the array!
A list of germanium detectors can be specified using the 'sunken' windows at the top of the script. This allows for a selected calibration of detectors (and bad detectors can be avoided). The format is the usual Bob Belshe format. For instance, to specify all germanium detectors from 1 to 30 except detectors 2, 13, 14, 15 and 21 use the following string: '1,3-12,16-20,22-30. All the parameters in this script are stored in a file that is read when the script is invoked (use the BGOcal entry on the openwin calibration menu). The current 'sunken window' parameters of the script are stored in this file when the 'store as default selection' is pushed.
Only the events where part of the 661.61 KeV gamma rays from the 137Cs source was deposited in the germanium crystal are selected from the data stream on the network. Moreover, only events where the rest of the energy was deposited in one and only one BGO crystal are used in this analysis. Such events are stored in 2D BGO energy vs. germanium energy matrices. There will be seven of these per germanium detector or a total of 1540 matrices for the full array when we take into account that there are two tubes per BGO detector. The events selected and store in the 2D matrices will form a a sum line which is analyzed to obtain the gain and offset of the BGO-Crystal/tube. The slope of the sum line gives the ratio of BGO-crystal/tube gain over the gain of the germanium (which is know). From he intercept of the sum line the offset can be calculated. Note: both the offset and gain of the BGO detectors can be found using the single line source 137Cs because the gain of the germanium detector is already know.
The slope and intercept of the sum line is found by making slices on the germanium energy axis and finding the peak positions in the gates. The sets of peak positions and mean germanium slice energies allows the slope and intercepts to be calculated using a simple strait line regression fit.
The gain, g, of the tubes depends on the voltage on the tubes as:
where n is approximation equal to the number of dynodes in the photo tube and C is a constant. The parameter n is found experimentally and we do not need to know C. Knowledge of the current gain, the desired gain and the parameter n allows a new correct voltage to be calulated.
A 'get' of the current BGO HV is usually the first task in the BGO calibration. The current voltages on the tubes on the BGO crystals are read in the VXI front-end boards and store in a default file called: "bgo.hv". It is a good idea to save this file in a backup file for safe keeping. The save option is located just below the HV down-load button in a suggestive way for this reason. Usually the file name is chosen as: yymmdd_hhmm.hv so it is easy to identify when the high voltages were stored.
The current file for the BGO high voltages for the calibration task is called "bgo.hv". This file can be stored (copied) to another file for safe keeping and record keeping. The file name for the store file is usually chosen as: yymmdd_hhmm.hv so it is easy to identify when the high voltages were stored. The restore button will rename the specified high voltage file (in the sunken area) to the current high voltage file ("bgo.hv"). The file operations (cp and mv) can equally well be done from outside this calibration Tcl/TK GUI script.
To calibrate the BGO detectors the high voltages of the two tubes that are mounted on each BGO crystal are adjusted to give a calibrated pulse hight. This is accomplished by adjusting the high voltage on the tubes. Thus, the INDIVIDUAL tubes must be calibrated to give half the pulse hight in order for the tubes to be matched. This is accomplished by switching off the voltage to either one or the other tube on the crystals, hence the "BGO HV even ON" and "BGO HV odd ON" buttons in the high voltage button array. All the voltages can be switched off from this menu too and the voltages from the current "bgo.hv" file are up-loaded (restored) if the "BGO HV all ON" button is pushed. The latter action is equivalent to pushing the "put BGO high voltages" button (see separate help entry).
When either of the acquisition-on buttons ('ACQ to ...') are pushed the workstation starts to sort the data that is send over the network by the VME crate data sender. Data will be sorted into either the odd or the even matrices, "ebgo_ege.odd" or "ebgo_ege.even" depending on which acquisition-on button was pushed. The sort is done in memory and the disk files (matrices) are only updated when the sorting is stopped by pushing the "ACQ OFF" button.
The actual calibration of the data that was sorted is done by activating the "find voltages..." buttons. This will start a program that will analyze the bgo_energy vs ge_energy matrices (on disk from the sort) and find a new voltage to be download to the VXI boards. The current voltage file "bgo.hv" is updated but the VXI board parameters are not updated on the Ge/BGO boards until the "put BGO high voltages" button is pushed! The method that is used in the calibration is explained in another help entry.
Pushing the "put BGO high voltage" button sends the voltage parameters in the current BGO high voltage file "bgo.hv" to the VXI Ge/BGO boards. This should be done after a new values have been found, to make them effective, or can be used to restore old voltage values recovered via the restore facility of the script.