File indexing completed on 2024-09-27 07:02:32
0001
0002
0003 function print_the_help {
0004 echo "USAGE: --ebeam E --pbeam E -c compact.xml"
0005 echo "REQUIRED ARGUMENTS:"
0006 echo " -h|--help Print this message"
0007 echo " --ebeam Electron beam energy (5, 10 or 18)"
0008 echo " --pbeam Ion beam energy (41, 100 or 275)"
0009 echo " -c|--compact Compact file to set beam energy for"
0010 exit
0011 }
0012
0013 EBEAM=
0014 PBEAM=
0015 COMPACT=
0016
0017 while [ $
0018 do
0019 key="$1"
0020 case $key in
0021 -h|--help)
0022 print_the_help
0023 ;;
0024 --ebeam)
0025 EBEAM=$2
0026 shift
0027 shift
0028 ;;
0029 --pbeam)
0030 PBEAM=$2
0031 shift
0032 shift
0033 ;;
0034 -c|--compact)
0035 COMPACT=$2
0036 shift
0037 shift
0038 ;;
0039 *)
0040 echo "unknown option"
0041 exit 1
0042 ;;
0043 esac
0044 done
0045
0046 echo "Setting beam energies to $EBEAM on $PBEAM for $COMPACT"
0047
0048 if [ -z $COMPACT ]; then
0049 echo "Error: no compact file given, use -h for help"
0050 exit 1
0051 fi
0052 if [ -z $EBEAM ]; then
0053 echo "Error: --ebeam argument missing, use -h for help"
0054 exit 1
0055 fi
0056 if [ -z $PBEAM ]; then
0057 echo "Error: --pbeam argument missing, use -h for help"
0058 exit 1
0059 fi
0060
0061 if [[ $PBEAM != "41" && $PBEAM != "100" && $PBEAM != "275" ]]; then
0062 echo "Error: Ion beam energy should be 41, 100, or 275 GeV"
0063 exit 1
0064 fi
0065 if [[ $EBEAM != 5 && $EBEAM != 10 && $EBEAM != 18 ]]; then
0066 echo "Error: Electron beam energy should be 5, 10, or 18 GeV"
0067 exit 1
0068 fi
0069 if [ ! -f ${COMPACT} ]; then
0070 echo "Error: Compact file ${COMPACT} does not exist"
0071 exit 1
0072 fi
0073
0074 sed -i "s?far_forward_fields_.\{2,3\}.xml?far_forward_fields_${PBEAM}.xml?" athena.xml
0075 sed -i "s?far_backward_fields_.\{1,2\}.xml?far_backward_fields_${EBEAM}.xml?" athena.xml