Neutrino oscillations


  • Tommy Ohlsson and Håkan Snellman, Neutrino Oscillations with Three Flavors in Matter of Varying Density Eur. Phys. J. C 20, 507 (2001)
  • Olga Mena, Irina Mocioiu, and Soebur Razzaque, Oscillation effects on high-energy neutrino fluxes from astrophysical hidden sources Phys. Rev. D 75, 063003 (2007)

How to get the code

  • The code has been uploaded to a GitHub repository

  • You can browse the code (no need for an account, although if you want to contribute to the development of this code then you should get one)

  • However you need to install Git if you want to fetch this code. I am not going to give you instructions about it. I believe there is sufficient documentation around.

  • After installing Git, setup a working directory. Inside it, then execute:

cd workingdir
git clone

  • You will get the whole repository in its latest version.

  • Note: at the Uniandes Hep Server ---this works:

cd workingdir
git clone git://




  • Once you get code, cd into the src/ directory and do make

cd src/

  • The tricky part is to get the requisites.

Make in CMSSW

  • Only for CMS users: If you are using a system that is configured to run CMSSW, just try the following before make:

cd src/
source compileWcmssw.csh #or .sh if in BASH

  • Then you will be ready to run.


  • After you have successfully compiled the code --no errors reported-- you can run the excecutables located under the subdirectory bin/. For our paper 01, we need to run the executable named paper01.exe. Options avaiable for this executable are explained if you ask for help:

cd bin/
./paper01.exe --help
Allowed options:
  --help                produce help message
  --model arg           model selection ( ModelA, ModelB, ModelC ) *
  --prob arg            selected probability ( Pee,Pem,Pet,Pmm,Ptt,... ) *
  --erange arg          energy range ( = emin,emax )
  --angles arg          use the following mixing angles ( = theta_1(12),theta_2(13),theta3(23) )
  --dmass2 arg          use the following delta masses square ( = dm2(Dm23sq),dM2(Dm21sq) )
  --modfile arg         use the specified model paramater file ( mymodelfile.xml )
  --steps arg           excecute steps ( 1,2,3,... )
  --earth arg           select earth model (EarthA, EarthB)

  • --model and --prob options are obligatory. The rest are optional.

A bit of explanation

  • This executable runs over the available star model profies. We got from Reference [Mena] three models available: "ModelA", "ModelB", "ModelC". Each one has different parameters. In this code, the parameters for each model are stored in the XML configuration file model_parameters.xml.

  • The excutable DOES not produce plots. It produces a ROOT with ntuples that contains the data points for a model and probabilities. You need to run a script over those ntuples to make the plots. This script is provided.

  • Plots are stored under the subdirectory results/.

  • In summary to produce the results we got in our paper, we need:

File Type Comment
paper01.exe executable check out the options with "--help"
mixing_parameters.xml configuration file contains angles and mass diff. squared (+more)
model_parameters.xml configuration file contains the model parameters + run configuration
make_plots_paper01.C ROOT - script generates the probabilites vs energy plots
validate.exe executable Basic validation plots (review)

An example

* Let's say we want to generate the probabilities vs energy plots for e-e e-mu and e-tau. You will need to do:

cd bin/
./paper01.exe --model ModelA --prob Pee,Pem,Pet

The range in energy is fixed to what is contain in the model_parameters.xml file. However, you can also give the energy range:

cd bin/
./paper01.exe --model ModelA --prob Pee,Pem,Pet --erange 1.0e11,1.0e12

  • In any case, this produces the root file output.root. You can now run the script make_plots_paper01.C on this file. Start a ROOT session:

cd bin/
root -l
root [1] .L make_plots_paper01.C 
root [2] makePlots()

  • You are done!



It is pretty simple to generate documentation for this code using doxygen which can be installaed on your machine.

  • A doxygen configuration file is available under the doc/ directory. Just do the following (assuming you got doxygen installed):

cd doc/
doxygen config

  • This will generate documentation for all code in html format. Then to open it, go to your web browser and click on "Open File". Give the path to "doc/html/index.html" and the you are done.

  • You will be able to explore the code in detail. Doxygen will show you for instance, the collaboration between classes as in this graph:


Data Flow


  • Example: ROOT-tuple content of some data:


XML Configuration files

  • matrix_config.xml (Based on Olga Mena's reference)

ParId Name Default(Mena)
Par1 theta_12 33.83
Par2 theta_13(*) 11.39
Par3 theta_23 45.0
Par4 Dm23sq 0.0024
Par8 Dm21sq 0.00008
  • (*) sin^2 (2 theta_13) = 0.15

  • Different mixing parameters setups also used by us:

Name Ohlsson Setup I Setup II
theta_12 45.0 33.8 33.8
theta_13 5.0 8.8 12
theta_23 45.0 45.0 45.0
Dm23sq 0.0032 0.0032 0.0032
Dm21sq 0.0 8e-5 8e-5
deltaCP 0.0 0.0 0.0
  • Setups I & II proposed by Sarira

  • model_config.xml: XML model config file - (as in Olga Mena reference). Default values given in the XML file:

Name Description Model A Model B Model C
R_* [cm] Radius of star (see note) 3.00e12 3.00e12 3.00e12
R_jet [cm] HE nu production point 10^10.8 10^10.8 10^10.8
R_b [cm] Outermost H envelope radius - 10^12 10^11

Name Setup I Setup II
R_* [cm] 3.0e12 2.7e12
R_jet [cm] 10^10.8 10^10.8

Topic attachments
I Attachment History Action Size Date Who Comment
PNGpng Root_file_contents_steps_1to3.png r1 manage 6.9 K 2013-04-18 - 05:35 AndresOsorio ROOT-tuple content
PNGpng classNeutrinosInMediumPaper__coll__graph.png r2 r1 manage 11.1 K 2013-03-04 - 15:36 AndresOsorio Neutrino Oscillation code - generate plots for the paper 01
PNGpng model-description.png r1 manage 45.7 K 2013-03-27 - 16:06 AndresOsorio Data flow
XMLxml model_config.xml r2 r1 manage 3.9 K 2013-03-24 - 06:45 AndresOsorio XML model config file - (as in Olga Mena reference)
XMLxml model_config_SetI.xml r1 manage 2.8 K 2013-03-24 - 06:45 AndresOsorio  
XMLxml model_config_SetII.xml r1 manage 2.8 K 2013-03-24 - 06:46 AndresOsorio  
Edit | Attach | Watch | Print version | History: r26 < r25 < r24 < r23 < r22 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r26 - 2013-04-18 - AndresOsorio
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright &© 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback