SoftwareHints » History » Revision 3
Revision 2 (Dobbs, Adam, 02 February 2013 16:23) → Revision 3/17 (Dobbs, Adam, 02 February 2013 16:24)
h1. Software Hints and Tips h2. Running a tracker simulation There is a dedicated directory holding top level scripts for producing tracker data within MAUS at: <pre> bin/user/scifi </pre> For example to run a MAUS simulation of the tracker in the presence of a magnetic field do the following from the MAUS root directory: <pre> source env.sh cd bin/user/scifi ./simulate_scifi.py --configuration_file datacard_mc_helical </pre> The equivalent command for no magnetic field (straight tracks) is: <pre> ./simulate_scifi.py --configuration_file datacard_mc_straight </pre> h2. Datacard variables Datacard variables control the various parameters passed to MAUS. The variables assume the default values set in src/common_py/ConfigurationDefaults.py unless overridden in a datacard or elsewhere. Here are a few common variables: * Number of spills. The number of spills to simulate can be set by editing the relevant datacard file and changing the variable 'spill_generator_number_of_spills'. * The number of particles per spill is controlled by the beam variable. This has a number of sub-variables, two of which can be set to alter the number of particles per spill: ** 'binomial_n' is the number of attempts at generating a track ** 'binomial_p' is the probability an attempt succeeds * Helical pattern recognition can be turned on or off by setting 'SciFiHelicalPROn' to 1 or 0 respectively * Straight pattern recognition can be turned on or off by setting 'SciFiStraightPROn' to 1 or 0 respectively h2. Accessing the output data Data is output by MAUS either as "ROOT":http://http://root.cern.ch/ ROOT or JSON documents. In order for ROOT to understand the classes we have written a ROOT dictionary, built automatically by MAUS must first be loaded. In an interactive ROOT session this done with following command: <pre> .L $MAUS_ROOT_DIR/build/libMausCpp.so </pre> The equivalent command if using "PyROOT":http://root.cern.ch/drupal/content/pyroot is <pre> import libMausCpp </pre> An example ROOT session to open a data file would be: <pre> > .L $MAUS_ROOT_DIR/build/libMausCpp.so > TFile f1("maus_output.root") > TBrowser b </pre> The equivalent PyROOT session would be: <pre> > from ROOT import * > import libMausCpp > f1 = TFile("maus_output.root") > b = TBrowser() </pre> The tracker MC data can then be found by browsing to: <pre> Spill:data:_spill:_mc:_sci_fi_hits </pre> The reconstructed data is stored under: <pre> Spill:data:_spill:recon:_scifi_event </pre>