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
10PMNS::PMNS() : U(3, 3)
11{}
12
13void 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}
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
double delta
Definition: PMNS.h:214
double c12
Definition: PMNS.h:215
PMNS()
Definition: PMNS.cpp:10
gslpp::matrix< gslpp::complex > U
Definition: PMNS.h:217
double c23
Definition: PMNS.h:215
double s12
Definition: PMNS.h:214
double s23
Definition: PMNS.h:214
double alpha21
Definition: PMNS.h:214
double s13
Definition: PMNS.h:214
double alpha31
Definition: PMNS.h:214
double c13
Definition: PMNS.h:215