a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
PMNS.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2012 HEPfit Collaboration
3  *
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #include "PMNS.h"
9 
10 PMNS::PMNS() : U(3, 3)
11 {}
12 
13 void PMNS::computePMNS(double s12_v, double s13_v, double s23_v, double delta_v, double alpha21_v, double alpha31_v)
14 {
15  s12 = s12_v;
16  s13 = s13_v;
17  s23 = s23_v;
18  c12 = sqrt(1. - s12 * s12);
19  c13 = sqrt(1. - s13 * s13);
20  c23 = sqrt(1. - s23 * s23);
21  delta = delta_v;
22  alpha21 = alpha21_v;
23  alpha31 = alpha31_v;
24 
25  U.assign(0, 0, c12*c13);
26  U.assign(0, 1, gslpp::complex(s12*c13, alpha21 / 2., true));
27  U.assign(0, 2, gslpp::complex(s13, -delta + alpha31 / 2., true));
28 
29  U.assign(1, 0 , -s12 * c23 - gslpp::complex(c12 * s23*s13, delta, true));
30  U.assign(1, 1, (c12 * c23 - gslpp::complex(s12 * s23*s13, delta, true)) *
31  gslpp::complex(1., alpha21 / 2., true));
32  U.assign(1, 2, gslpp::complex(s23*c13, alpha31 / 2., true));
33 
34  U.assign(2, 0, s12 * s23 - gslpp::complex(c12 * c23*s13, delta, true));
35  U.assign(2, 1, (-c12 * s23 - gslpp::complex(s12 * c23*s13, delta, true)) *
36  gslpp::complex(1., alpha21 / 2., true));
37  U.assign(2, 2, gslpp::complex(c23*c13, alpha31 / 2., true));
38 
39 }
PMNS::alpha31
double alpha31
Definition: PMNS.h:214
PMNS::s23
double s23
Definition: PMNS.h:214
PMNS::s13
double s13
Definition: PMNS.h:214
PMNS::computePMNS
void computePMNS(double s12_v, double s13_v, double s23_v, double delta_v, double alpha21_v, double alpha31_v)
A set method to calculate the PMNS matrix from PMNS parameters.
Definition: PMNS.cpp:13
gslpp::complex
A class for defining operations on and functions of complex numbers.
Definition: gslpp_complex.h:35
PMNS::delta
double delta
Definition: PMNS.h:214
PMNS.h
PMNS::alpha21
double alpha21
Definition: PMNS.h:214
PMNS::c13
double c13
Definition: PMNS.h:215
gslpp::sqrt
complex sqrt(const complex &z)
Definition: gslpp_complex.cpp:385
PMNS::PMNS
PMNS()
Definition: PMNS.cpp:10
PMNS::U
gslpp::matrix< gslpp::complex > U
Definition: PMNS.h:217
PMNS::c12
double c12
Definition: PMNS.h:215
PMNS::s12
double s12
Definition: PMNS.h:214
PMNS::c23
double c23
Definition: PMNS.h:215