Skip to content

lyates17/whipping_star

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

###############################################################################
 *
 *	 .oooooo..o oooooooooo.  ooooo      ooo  .o88o.  o8o      .  
 *	d8P'    `Y8 `888'   `Y8b `888b.     `8'  888 `"  `"'    .o8  
 *	Y88bo.       888     888  8 `88b.    8  o888oo  oooo  .o888oo
 *	 `"Y8888o.   888oooo888'  8   `88b.  8   888    `888    888  
 *	     `"Y88b  888    `88b  8     `88b.8   888     888    888  
 *	oo     .d8P  888    .88P  8       `888   888     888    888 .
 *	8""88888P'  o888bood8P'  o8o        `8  o888o   o888o   "888"
 *
 *		SBNfit, fitter, oscillator, covariance matrix maker, collapser
 *			originally for sterile decays at SBL facilities
 *			but actually pretty generic
 *
 *		If you have any questions, queries or comments please contact the authors;
 *			 [email protected] 
 *			 [email protected]
 *
 *The authors make no guarrentee of the behaviour, stability or bug-free-ness of this code.
###################################################i#############################

This is a trimmed down version of SBNfit for usage in uBooNE. It does not have full functionality yet, things are being migrated in/checked and documentated. 

##########################################   Building and compiling  ########################################
The CMakeLists should be a standard and generic enough to work on most machines, although I have not tested it everywhere. It should also be simple enough to fix if it doesn't work out-of-the-box. 
For an introduction see: https://microboone-docdb.fnal.gov/cgi-bin/private/ShowDocument?docid=17092

Attention: Please see the github wiki for most up to date documentation  https://github.com/markrosslonergan/whipping_star/wiki

#Instructions for GPVM based building and running. While in base git directory
source .setup.sh 

#To Build, should work out of the box on GPVM with above setup
cd build
cmake ..
make

This will build the SBNfit source and libraries, as well as executable example programs in build/example
The included simple examples are not physically accurate, just toy MC! 

cd examples

#The first example builds a covariance matrix from eventweight std::map<std::string,std::vector<double>> objects
./example1 --xml example.xml --print

should have 4 output files, first two data, second two human readable plots
	EXAMPLE1.SBNspec.root	: The central value spectra
	EXAMPLE1.SBNcovar.root	: The full and fractional covariance matricies
	SBNfit_spectrum_plots_EXAMPLE1.root    : The central value plots, but subchannels stacked to represent a channel
	SBNfit_covariance_plots_EXAMPLE1.root  : The covariance matricies plotted as TH2D nicely. Inside directory individualDir is all the individual variation matricies

#The second example loads up the computed covariance matrix and makes a plot of the chi^2 as you scale the signal for stats and stats+sys
./example2 --xml example.xml

should have 1 output. EXAMPLE2_plots.root containing a simple TCanvas showing the chi^2 behaviour



For an older out of date tutorial: https://docs.google.com/presentation/d/1vLYPDaID0a4nbx5rnKTda_RzhdTavLdyrkpkGMVZLgE/edit#slide=id.g35c91f84c5_0_194

############################################################################
##############		TODO 	     ########################################
############################################################################

(1) Being able to fill SBNfit histograms (subchannels) from functions of inputted variables. e.g fill "ereco" to nu_uBooNE_elike_intrinsic if "nupdg==1" or nu_uBooNE_mlike_otherwise
(2) DONE. -- Being able to see all individual histograms and how they change for all the universes 
(3) Being able to make covariance matrix from detetcor systematic MC files
(4) Pull terms
(5) Examples for oscillations
(6) DONE. -- Example for Frequentist Studies





About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 50.7%
  • Python 48.1%
  • C 0.5%
  • CMake 0.5%
  • Shell 0.1%
  • Logos 0.1%