close
Warning:
Can't synchronize with repository "(default)" ("(default)" is not readable or not a Git repository.). Look in the Trac log for more information.
- Timestamp:
-
Dec 21, 2016, 11:42:39 AM (8 years ago)
- Author:
-
Clarence Wret
- Comment:
-
--
Legend:
- Unmodified
- Added
- Removed
- Modified
-
v8
|
v9
|
|
6 | 6 | == Compiling NEUT and running neutroot2 == |
7 | 7 | |
8 | | The main neutrino-nucleus interaction generator lives in $NEUT_ROOT/src/neutsmpl/neutroot. NEUT has two dependencies: ROOT and the lesser known CERNLIB. You need to have $ROOTSYS, $CERN and $CERN_LEVEL environment variables set-up to compile NEUT. These are all specified in $NEUT_ROOT/src/neutsmpl/Envmakeneutsmpl.csh. |
| 8 | The main neutrino-nucleus interaction generator lives in `$NEUT_ROOT/src/neutsmpl/neutroot`. NEUT has two dependencies: ROOT and the lesser known CERNLIB. You need to have `$ROOTSYS`, `$CERN` and `$CERN_LEVEL` environment variables set-up to compile NEUT. These are all specified in `$NEUT_ROOT/src/neutsmpl/Envmakeneutsmpl.csh`. |
9 | 9 | |
10 | | Compilation is done (somewhat inconveniently) by running ./Makeneutsmpl in src/neutsmpl/: this calls a host of makefiles, sets up symlinks and so on. If you have some time on your hands and want to fix this, please contact us or Hayato-san. |
| 10 | Compilation is done (somewhat inconveniently) by running `./Makeneutsmpl` in `src/neutsmpl/`: this calls a host of makefiles, sets up symlinks and so on. If you have some time on your hands and want to fix this, please contact us or Hayato-san. |
11 | 11 | |
12 | | Running the main executable is done by ./neutroot2 NEUT_CARD_FILE.card OUTPUT_ROOT_FILE.root, where CARD_FILE.card is a card file compliant with your chosen NEUT version, and OUTPUT_ROOT_FILE.root is the output file where the events are to be saved. |
| 12 | Running the main executable is done by `./neutroot2 NEUT_CARD_FILE.card OUTPUT_ROOT_FILE.root`, where `NEUT_CARD_FILE.card` is a card file compliant with your chosen NEUT version, and `OUTPUT_ROOT_FILE.root` is the ROOT output file where the events are to be saved, and is the input for NUISANCE analyses. |
13 | 13 | |
14 | | Examples of NEUT card files can be found in the $NEUT_ROOT/src/neutsmpl/Cards directory, or have a look at what we used for 2016 at https://nuisance.hepforge.org/trac/wiki/Winter2016 and https://imperialcollegelondon.app.box.com/files/0/f/13226969736/neut_cards |
| 14 | Examples of NEUT card files can be found in the `$NEUT_ROOT/src/neutsmpl/Cards` directory, or have a look at what team NUISANCE used for 2016 analyses at https://nuisance.hepforge.org/trac/wiki/Winter2016 and https://imperialcollegelondon.app.box.com/files/0/f/13226969736/neut_cards |
15 | 15 | |
16 | 16 | Hot tip: NEUT can be quite verbose and you might want to pipe the output to file (or /dev/null...) rather than dump it to screen. This can actually speed up NEUT considerably. |
| 17 | |
17 | 18 | |
18 | 19 | == Structure of card files: == |
… |
… |
|
57 | 58 | = NEUT inputs for NUISANCE = |
58 | 59 | |
59 | | The output of neutroot, a neutvect, can be read in by NUISANCE to generate predictions. neutroot also saves the predicted flux and event rate predictions automatically into the neutvect files so NUISANCE already has everything it needs. |
| 60 | The output of `neutroot2`, contains a `neutvect` object which has all the information about the event in it. This is read in by NUISANCE to generate predictions. `neutroot2` also saves the predicted flux and event rate predictions automatically into the output file so NUISANCE already has everything it needs. |
60 | 61 | |
61 | | To read NEUT inputs the NEUT type just needs to be specified. |
62 | | {{{ |
63 | | sample MiniBooNE_CCQE_XSec_1DQ2_nu NEUT:/path/to/neut/input/file.root |
64 | | }}} |
| 62 | To read NEUT inputs the NEUT type just needs to be specified in the NUISANCE input card file, e.g. for MiniBooNE CCQE: |
| 63 | `sample MiniBooNE_CCQE_XSec_1DQ2_nu NEUT:/path/to/neut/input/file.root` |
65 | 64 | |
66 | 65 | |
… |
… |
|
69 | 68 | |
70 | 69 | = Joint Flux Inputs = |
71 | | neutroot does not yet natively support combined beams or targets so if you want to use the measurement classes that require this (e.g. MINERvA CC0pi nue+nuebar) you will have to setup a JOINT input. See HowToJointInput for more information on how to achieve this. |
| 70 | `neutroot2` does not yet natively support combined beams or targets so if you want to use the measurement classes that require this (e.g. MINERvA CC0pi nue+nuebar) you will have to setup a JOINT input. See HowToJointInput for more information on how to achieve this. |
72 | 71 | |
73 | 72 | |