Skip to content

Reorganization of the Berkeley group's Daya Bay oscillation fitter

Notifications You must be signed in to change notification settings

mjkramer/DybBerkFit

Repository files navigation

All paths, unless stated otherwise, are relative to the root of the repository.

By default, the fitter assumes we are fitting the full dataset with unblinded power. To fit the full dataset with blinded power, export LBNL_FIT_BLINDED=1. For fitting (unblinded) P17B, export LBNL_FIT_P17B=1. Do this before running scripts/init.sh.

Getting started

In a fresh clone, place the reactor power/burnup table in ReactorPowerCalculator/WeeklyAvg/weekly_power_fulldata_release_v2.dat (or ReactorPowerCalculator/WeeklyAvg/WeeklyAvg_P17B_by_Beda.txt for P17B). Then run scripts/init.sh to generate static data (reactor flux, toy MC configs). This only needs to be done once.

Export the environment variable LBNL_FIT_INDIR to point to the directory containing the input files, or else create the input directory and put the inputs there. The inputs should look like:

Theta13-inputs_P17B_inclusive_Xad.txt
accidental_eprompt_shapes_Xad.root
ibd_eprompt_shapes_Xad.root

where Xad should run through 6ad, 8ad, 7ad. Example inputs from some analysis groups can be found in example.

Similarly, you can export LBNL_FIT_OUTDIR to point to the directory where you want intermediate/output files to end up, or else they will end up in LBNL_FIT_INDIR, if set; otherwise, in the output directory.

If you will be immediately running the fitter on multiple machines, it is recommended that you compile the code before submitting any jobs. Run scripts/compile.sh. If you’re running the fitter interactively, the code will automatically be compiled by scripts/run_chain.sh.

Now you can run the toyMC/fitter chain. If you are not the only user of the machine, export LBNL_FIT_MAXTHREADS to something courteous, like 2 or 4. Note that this specifies the maximum number of threads per process; since processes will be running in parallel, the true number of threads can be 3x as high. When you’re ready, just run scripts/run_chain.sh (warning: will spam your terminal, might want to save the output).

If you get crashes, export LBNL_FIT_DEBUG=1, and run scripts/clean.sh to delete the compiled code. On the next crash, you’ll get a proper backtrace.

For an example of producing theta/delta contours from the output files, see analysis/plot_contours.C.

About

Reorganization of the Berkeley group's Daya Bay oscillation fitter

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published