#!/bin/bash
##########################################################################
# run the BBC ADC gain calibrations
##########################################################################
##########################################################################
# 1 delay = 4[clock]*106.5[ns/clock]/256 = 1.6640625[ns]
# 4 and 256 are defined by electronics. it should not be change!!
# Take always care of clock width, if it will be changed, or not
##########################################################################
let tpdelay=120
<-- TP_Delay. This Value should be 8 more value than TP_Delay value of TVC= 0
ch
let dac=4095
<-- MAX of Charge
##########################################################################
# relevant files:
# 1. the list of
tpdelays and prdf files are kept in ~phnxbbc/calib/logs/
# 2. an ascii dump of the output from this run is kept for 30 days in
# ~phnxbbc/calib/logs/rundump
##########################################################################
calibfile=~phnxtof/calib/logs/Q_ntc/ntcqscan`date '+@%m-%d-%Y_%H:%M.%S'`.calib
dumpfile=`ls -tr ~phnxtof/calib/logs/rundump/ntcqscan*.dump | head -1`
##########################################################################
# loop over the test pulse delays
##########################################################################
while [ $dac -ge 0 ]
do
setbbcTimingDelay.sh $tpdelay
echo "********************************"
echo "* setting dac to $dac"
echo "********************************"
setntcQvalue.sh $dac $dac
######################################
# start up run control, take data
######################################
rc_calib.sh BB GTM.BB.INITQFA.gtm 20
<-- Time of taking data
#let dac-=128
let dac-=4000
<-- Step of Charge
done > $dumpfile
##########################################################################
# parse the text dump to get the tpdelay and prdf file
##########################################################################
awk '/^* setting dac to / { printf("%-8d", $NF); } \
/^taskName = tStartPar/ { print $NF; }' $dumpfile > $calibfile