LUXSimUsingHTCondor: Difference between revisions

Jump to navigation Jump to search
 
(13 intermediate revisions by 2 users not shown)
voms-proxy-init --voms=lz --valid=142:00
 
# Run farmoutrunWiscJobs script to submit jobs
# To get help about options
# python /cvmfs/lz.opensciencegrid.org/sw/bin/farmoutGenericrunWiscJobs.py -h
 
python /cvmfs/lz.opensciencegrid.org/sw/bin/farmoutGenericrunWiscJobs.py \
--WorkFlow="test”test.mac_test1" \
--Executable="/dataafs/tapashep.wisc.edu/user/cvuosalo/lzsimwork/submitlz/RunLUXSim.sh”sh" \
--nJobs=2 \
--Experiment=lz \
--Executable=“/data/tapas/lzsim/submit/RunLUXSim.sh” \
--nJobs=210 \
--TransferInputFile="/dataafs/tapashep.wisc.edu/user/cvuosalo/lzsimwork/submitlz/test.mac”mac" \
--UserEnv="MyOutputName=test_ “ \
--HDFSProdDir=outfiles \
-o "test”
--ArgumentsUserEnv="test.mac”UserName=`whoami` " \
--OutputDir="test.mac" \
--Arguments="test.mac"
 
# If you want your output copied to HDFS, have your executable copy the output
# files to the directory you specify with --HDFSProdDir.
 
#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.
</nowiki>
 
==== ExampleExecutable example: RunLUXSim.sh ====
 
<nowiki>
 
wdir=$(pwd)
ver=HEADrelease-4.4.2
 
# Source the environment needed to run LUXSim
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
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 .
 
./LUXSimExecutable $@
 
mkdir -p ../outfiles
uname=$(whoami)
 
for i in *.bin
do
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
echo /cvmfs/lz.opensciencegrid.org/LUXSim/$ver/tools/LUXRootReader "${i}"
/cvmfs/lz.opensciencegrid.org/LUXSim/$ver/tools/LUXRootReader "${i}"
(cd ../outfiles ; ln -s ../$tmpDir/${i} .)
 
else
echo "Something went wrong... No bin files made. Look at the log"
exit 1
fi
done
cd ../outfiles
ln -s ../$tmpDir/*.root .
 
 
# Copy root files to storage
</nowiki>
for n in *.root
do
if [ -s "${n}" ]; then
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 ====
 
<nowiki>
/run/verbose 0
/control/verbose 0
/tracking/verbose 0
/grdm/verbose 0
 
/run/initialize
 
/LUXSim/io/alwaysRecordPrimary true
# Output folder
/LUXSim/io/updateFrequency 100
/LUXSim/io/outputDir .
/LUXSim/io/updateFrequencyoutputName 1EnergyDeposition_
/LUXSim/physicsList/useOpticalProcesses true
 
 
/LUXSim/detector/select LZDetector
/LUXSim/detector/gridWires onoff
/LUXSim/detector/printEFieldstopGrid on
 
/LUXSim/detector/printEFields
 
/LUXSim/detector/update
 
/LUXSim/detector/recordLevel LiquidXenonTarget 3
/LUXSim/materials/LXeTeflonRefl 0.95
/LUXSim/detector/recordLevelOptPhot LiquidXenonTarget 3
/LUXSim/materials/GXeTeflonRefl 0.75
/LUXSim/detector/recordLevelThermElec LiquidXenonTarget 3
/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 530 keV
/gps/position 0 0 75 cm
#this is approximate center. See ElectronCollection for whole volume
/gps/ang/type iso
 
/LUXSim/physicsList/useOpticalProcesses true
# Output .bin files
 
/LUXSim/beamOn 105
/control/getEnv MyRandomNumber
exit
/control/getEnv MyOutputName
/LUXSim/io/outputName {MyOutputName}
/LUXSim/randomSeed {MyRandomNumber}
/LUXSim/physicsList/driftElecAttenuation 1.5 m
/LUXSim/beamOn 10
 
exit</nowiki>
 
==== Files in the storage area ====

Navigation menu