MSW Triangle

Paremeters to be used

  1. mixing angle $\theta$
  2. mass difference $\Delta m^2$
  3. energy of neutrinos $E$
  4. matter profile $n_e(x)$

Survival probability is given by

\begin{equation} P_{\nu_e\to\nu_e} = \frac{1}{2} + \left( \frac{1}{2} - P_f \right) \cos 2\theta \cos 2\theta_m, \end{equation}

where

\begin{equation} P_f = e^{-\frac{\pi}{2}\gamma}, \end{equation}

and

\begin{equation} \gamma = \frac{\Delta m^2 \sin^2 2\theta}{2E \cos 2\theta \left\lvert \frac{1}{n_e} \frac{dn_e}{dr} \right\rvert } = \frac{\omega \sin^2 2\theta}{\cos 2\theta \left\lvert \frac{1}{n_e} \frac{dn_e}{dr} \right\rvert } = \frac{\omega \sin^2 2\theta}{\cos 2\theta \left\lvert \frac{1}{\hat\lambda} \frac{d\hat\lambda}{dr} \right\rvert } \end{equation}

in which

\begin{equation} \cos 2\theta_m = \frac{\cos 2\theta - \hat\lambda}{\sqrt{\hat\lambda^2 + 1 - 2\hat\lambda \cos 2\theta}}, \end{equation}

What we would like to produce is the survival probability of electron neutrinos as a heat map with two parameters mass difference $\Delta m^2$ and $\sin^22\theta$ at each distance $x$.

The formula we have above is only valid far away from the resonance where the Landau-Zener transition happens.

The gamma for our sun is

\begin{equation} \gamma_S = 3.36\times 10^{14} \omega \frac{\sin^22\theta}{\cos2\theta} = 2.554\times 10^3 \frac{\sin^22\theta}{\cos2\theta} \frac{1}{\hat\lambda} \end{equation}

In [45]:
%matplotlib inline

In [46]:
import numpy as np
import sys
sys.path.insert(0,'../../module')
import neuosc as ns
import sympy as sp
import matplotlib.pyplot as plt

In [47]:
figureSize = (13,9)

In [48]:
reload(ns)


Out[48]:
<module 'neuosc' from '../../module/neuosc.py'>

In [49]:
neu_e = 1000000  #eV
msw_eff = ns.MSW(neu_e)

In [50]:
msw_eff.adiabatic_p(0.1,0)


Out[50]:
0.98026524850072128

In [51]:
size = [200,100]

sinma = np.logspace(-4, 0, num=size[0])
lam = np.logspace(6, -1, size[1])

In [52]:
su_prob = [[0 for x in range(size[0])] for x in range(size[1])]

md = 0

for matter in lam:
    agl = 0
    for sin22theta in sinma:
        angle = np.arcsin( np.sqrt(sin22theta) )/2
        su_prob[md][agl] = msw_eff.solar_landau_zener_p(angle, matter)#adiabatic_p(angle, matter)
        agl = agl + 1
    md = md + 1

In [53]:
sinma, lam = np.meshgrid(np.log10(sinma), np.log10(lam) )
plt.figure(figsize=figureSize)
plt.pcolormesh(sinma, lam, np.array(su_prob) )
plt.colorbar() #need a colorbar to show the intensity scale
plt.show() #boom



In [ ]: