LUXSimUsingHTCondor: Difference between revisions

From LZ Computing
Jump to navigation Jump to search
Line 60: Line 60:
fi
fi
done
done

* Following is an example test.mac :

<nowiki>
/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</nowiki>

Revision as of 19:39, 20 August 2015

Submit HTCondor Jobs

  • In order to use the computing resources at Wisconsin, one can submit HTCondor jobs to run simulation.
  ssh lzlogin01.hep.wisc.edu
  # Make a valid voms-proxy
  voms-proxy-init --voms=lz --valid=142:00
  # Run farmout script to submit jobs
  python /cvmfs/lz.opensciencegrid.org/sw/bin/farmoutGeneric.py \
       --WorkFlow="test” \
       --nJobs=2 \
       --Executable=“/data/tapas/lzsim/submit/RunLUXSim.sh” \
       --TransferInputFile="/data/tapas/lzsim/submit/test.mac” \
       --UserEnv="MyOutputName=test_ “ \
       -o "test” 
       --Arguments="test.mac”
  • Above input macro and Executable script can be used an example
  • RunLUXSim.sh uses HEAD version of LUXSim
  • Example RunLUXSim.sh looks like this :
 #!/bin/bash
 wdir=$(pwd)
 ver=HEAD
 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
 tmpDir=$(mktemp -d --tmpdir="./")
 echo "Linking CVMFS LUXSim area to temp dir. $tmpDir"
 cd $tmpDir
 ln -s /cvmfs/lz.opensciencegrid.org/LUXSim/$ver/* .
 echo "MyOutputName=$MyOutputDir/$MyOutputName$MyRandomNumber"
 cp ../*.mac .
 ./LUXSimExecutable $@
 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
      /cvmfs/lz.opensciencegrid.org/LUXSim/$ver/tools/LUXRootReader "${i}"
     else
     echo "Something went wrong... No bin files made. Look at the log"
   fi
 done
 # Copy root files to storage
 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
  • Following is an 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