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 .