LUXSimUsingHTCondor: Difference between revisions
Jump to navigation
Jump to search
| Line 29: | Line 29: | ||
</nowiki> |
</nowiki> |
||
==== Executable example: RunLUXSim.sh ==== |
|||
<nowiki> |
|||
#!/bin/bash |
#!/bin/bash |
||
wdir=$(pwd) |
wdir=$(pwd) |
||
ver= |
ver=release-4.4.2 |
||
# Source the environment needed to run LUXSim |
# Source the environment needed to run LUXSim |
||
| Line 41: | Line 38: | ||
export PATH=${ROOTSYS}/bin:/sbin:/usr/sbin:/usr/bin:/bin:/usr/local/bin |
export PATH=${ROOTSYS}/bin:/sbin:/usr/sbin:/usr/bin:/bin:/usr/local/bin |
||
export LD_LIBRARY_PATH=${ROOTSYS}/lib:/lib64:/usr/lib64:/lib:/usr/lib |
export LD_LIBRARY_PATH=${ROOTSYS}/lib:/lib64:/usr/lib64:/lib:/usr/lib |
||
source /cvmfs/lz.opensciencegrid.org/geant4/etc/geant4env.sh |
source /cvmfs/lz.opensciencegrid.org/geant4/etc/geant4env.sh geant4.9.5.p02 |
||
# Temporary directory that gets created on the execute node |
# Temporary directory that gets created on the execute node |
||
| Line 47: | Line 44: | ||
echo "Linking CVMFS LUXSim area to temp dir. $tmpDir" |
echo "Linking CVMFS LUXSim area to temp dir. $tmpDir" |
||
cd $tmpDir |
cd $tmpDir |
||
# ln -s /cvmfs/lz.opensciencegrid.org/LUXSim/release-4.3.2/* . |
|||
ln -s /cvmfs/lz.opensciencegrid.org/LUXSim/$ver/* . |
ln -s /cvmfs/lz.opensciencegrid.org/LUXSim/$ver/* . |
||
echo "MyOutputName=$MyOutputDir/$MyOutputName$MyRandomNumber" |
# echo "MyOutputName=$MyOutputDir/$MyOutputName$MyRandomNumber" |
||
# export MyOutputName=$MyOutputDir/$MyOutputName$MyRandomNumber |
|||
cp ../*.mac . |
cp ../*.mac . |
||
| Line 55: | Line 54: | ||
./LUXSimExecutable $@ |
./LUXSimExecutable $@ |
||
uname=$(whoami) |
|||
for i in *.bin |
for i in *.bin |
||
do |
do |
||
if [ -s "${i}" ]; then |
if [ -s "${i}" ]; then |
||
# Copy .bin files to storage /hdfs/lz/user/ |
|||
echo Trying... lcg-cp "${i}" -bvvD srmv2 srm://cmssrm2.hep.wisc.edu:8443/srm/v2/server?SFN=/hdfs/lz/user/${uname}/${MyOutputDir}/"${i}" |
|||
lcg-cp "${i}" -bvvD srmv2 srm://cmssrm2.hep.wisc.edu:8443/srm/v2/server?SFN=/hdfs/lz/user/${uname}/${MyOutputDir}/"${i}" |
|||
# Convert .bin file to .root file |
# Convert .bin file to .root file |
||
echo /cvmfs/lz.opensciencegrid.org/LUXSim/$ver/tools/LUXRootReader "${i}" |
|||
/cvmfs/lz.opensciencegrid.org/LUXSim/$ver/tools/LUXRootReader "${i}" |
/cvmfs/lz.opensciencegrid.org/LUXSim/$ver/tools/LUXRootReader "${i}" |
||
| ⚫ | |||
else |
else |
||
echo "Something went wrong... No bin files made. Look at the log" |
echo "Something went wrong... No bin files made. Look at the log" |
||
exit 1 |
|||
fi |
fi |
||
done |
done |
||
| ⚫ | |||
# Copy root files to storage |
|||
| ⚫ | |||
do |
|||
| ⚫ | |||
echo Trying... lcg-cp "${n}" -bvvD srmv2 srm://cmssrm2.hep.wisc.edu:8443/srm/v2/server?SFN=/hdfs/lz/user/${uname}/${MyOutputDir}/"${n}" |
|||
lcg-cp "${n}" -bvvD srmv2 srm://cmssrm2.hep.wisc.edu:8443/srm/v2/server?SFN=/hdfs/lz/user/${uname}/${MyOutputDir}/"${n}" |
|||
else |
|||
echo "Something went wrong... No Root files made. Look at the log" |
|||
fi |
|||
done |
|||
</nowiki> |
|||
==== Example test.mac ==== |
==== Example test.mac ==== |
||
Revision as of 16:55, 20 April 2017
Submit HTCondor Jobs
In order to use the computing resources at Wisconsin, one can submit HTCondor jobs to run simulation
ssh <username>@lzlogin01.hep.wisc.edu
# Make a valid voms-proxy
voms-proxy-init --voms=lz --valid=142:00
# Run farmout script to submit jobs
# To get help about options
# python /cvmfs/lz.opensciencegrid.org/sw/bin/farmoutGeneric.py -h
python /cvmfs/lz.opensciencegrid.org/sw/bin/farmoutGeneric.py \
--WorkFlow="test.mac_test1" \
--Executable="/afs/hep.wisc.edu/user/cvuosalo/work/lz/farmoutluxsim.sh" \
-e lz \
--nJobs=10 \
--TransferInputFile="/afs/hep.wisc.edu/user/cvuosalo/work/lz/test.mac" \
-f '*.bin *.root' \
--UserEnv="UserName=`whoami` " \
-o "test.mac" \
--Arguments="test.mac"
#The above python scipt generates job file using your input macro. \
# It uses the shell script to run LUXSim and copy your output to LZ storage area.
- !/bin/bash
wdir=$(pwd) ver=release-4.4.2
- Source the environment needed to run LUXSim
export ROOTSYS=/cvmfs/lz.opensciencegrid.org/ROOT/v5.34.32/slc6_gcc44_x86_64/root export PATH=${ROOTSYS}/bin:/sbin:/usr/sbin:/usr/bin:/bin:/usr/local/bin export LD_LIBRARY_PATH=${ROOTSYS}/lib:/lib64:/usr/lib64:/lib:/usr/lib source /cvmfs/lz.opensciencegrid.org/geant4/etc/geant4env.sh geant4.9.5.p02
- Temporary directory that gets created on the execute node
tmpDir=$(mktemp -d --tmpdir="./") echo "Linking CVMFS LUXSim area to temp dir. $tmpDir" cd $tmpDir
- ln -s /cvmfs/lz.opensciencegrid.org/LUXSim/release-4.3.2/* .
ln -s /cvmfs/lz.opensciencegrid.org/LUXSim/$ver/* .
- echo "MyOutputName=$MyOutputDir/$MyOutputName$MyRandomNumber"
- export MyOutputName=$MyOutputDir/$MyOutputName$MyRandomNumber
cp ../*.mac .
- Run the LUXSim
./LUXSimExecutable $@
for i in *.bin do
if [ -s "${i}" ]; then
# Convert .bin file to .root file
echo /cvmfs/lz.opensciencegrid.org/LUXSim/$ver/tools/LUXRootReader "${i}"
/cvmfs/lz.opensciencegrid.org/LUXSim/$ver/tools/LUXRootReader "${i}"
ln -s "${i}" ..
else
echo "Something went wrong... No bin files made. Look at the log"
exit 1
fi
done ln -s *.root ..
Example test.mac
/run/verbose 0
/control/verbose 0
/tracking/verbose 0
/grdm/verbose 0
/run/initialize
# Output folder
/LUXSim/io/outputDir .
/LUXSim/io/updateFrequency 1
/LUXSim/physicsList/useOpticalProcesses true
/LUXSim/detector/select LZDetector
/LUXSim/detector/gridWires on
/LUXSim/detector/printEFields
/LUXSim/detector/update
/LUXSim/materials/LXeTeflonRefl 0.95
/LUXSim/materials/GXeTeflonRefl 0.75
/LUXSim/materials/LXeAbsorption 100 m
/LUXSim/materials/GXeAbsorption 500 m
/LUXSim/materials/LXeSteelRefl 0.2
/LUXSim/materials/GXeSteelRefl 0.2
/LUXSim/materials/AlUnoxidizedQuartzRefl 0.9
/LUXSim/materials/GXeRayleigh 500 m
/LUXSim/materials/LXeRayleigh 0.3 m
/gps/particle e-
/gps/energy 5 keV
/gps/position 0 0 75 cm
/gps/ang/type iso
# Output .bin files
/control/getEnv MyRandomNumber
/control/getEnv MyOutputName
/LUXSim/io/outputName {MyOutputName}
/LUXSim/randomSeed {MyRandomNumber}
/LUXSim/physicsList/driftElecAttenuation 1.5 m
/LUXSim/beamOn 10
exit
Files in the storage area
- Some events are available in the Wisconsin LZ storage area and can be accessed using the following command :
xrdfs g22n02.hep.wisc.edu:31094 ls /lz/user/tapas/LZSim/pmt-Co_gdecay_1_pro_sci_ioni_drift/ xrdfs g22n02.hep.wisc.edu:31094 ls /lz/user/tapas/LZSim/pmt-Co_gdecay_1_pro_sci_ioni_drift_gammma100KeV
- copy the files using xrdcp
xrdcp -d 1 -v \ root://cmsxrootd.hep.wisc.edu//lz/user/tapas/LZSim/pmt-Co_gdecay_1_pro_sci_ioni_drift_gammma100KeV/filename.root .