<< Graphics`Graphics`

K0-K0bar Mixing

Define K0 and K0bar wave functions:

(K0  =  {1, 0}) // MatrixForm

(K0bar = {0, 1}) // MatrixForm

Define CP eigenstates:

(K1  =  1/Sqrt[2] (K0  +  K0bar)) // MatrixForm

(K2  =  1/Sqrt[2] (K0  -  K0bar)) // MatrixForm

Define mass states:

Simplify[
        Klong  =  1/Sqrt[1 + e^2] (K2 + e Exp[I phi]  K1)] // 
      MatrixForm

Simplify[Kshort =  1/Sqrt[1 + e^2] (K1 + e Exp[I phi] K2)] // 
      MatrixForm

Simplify[ExpToTrig[Simplify[(Kshort /. {I -> -I}) . Klong]]]

K0initial = 
      Solve[K0 ==  a Kshort  +  b Klong,  {a, b}][[1]]

K0barinitial = 
      Solve[K0bar ==  a Kshort  +  b Klong,  {a, b}][[1]]

(Klongt[t_] = Simplify[Klong*Exp[I (ml +  I gl) t] ]) // 
      MatrixForm

(Kshortt[t_] = Simplify[Kshort*Exp[I (ms +  I gs) t] ]) // 
      MatrixForm

MpositronK0[t_] = 
      K0 . Simplify[a Klongt[t] + b Kshortt[t] /. K0initial]

parameters = {gs -> 1, ml -> ms +  .6, gl ->  .002}

ratepositron[t_]  = 
      Simplify[Expand[
          MpositronK0[t]*(MpositronK0[t] /. {I -> -I, -I -> I})]]

MelectronK0[t_] = 
      K0bar . Simplify[a Klongt[t] + b Kshortt[t] /. K0initial]

rateelectron[t_]  = 
      Simplify[Expand[
          MelectronK0[t]*(MelectronK0[t] /. {I -> -I, -I -> I})]]

Set the CP violation parameters to zero:

plot1  = 
      Plot[Re[Simplify[
            (rateelectron[t]/ratepositron[t] /. parameters) /. {phi -> 0, 
                e -> 0}]], {t, 0, 10}, PlotRange -> {0, 1.1}]

Add approximate CP violation parameters:

plot2  = 
      Plot[Re[Simplify[
            (rateelectron[t]/ratepositron[t] /. parameters) /. {
                phi -> 0. , e -> 0.00167}]], {t, 0, 10}, 
        PlotRange -> {0, 1.1}]

Show[plot1, plot2]

Simplify[
      (rateelectron[10]/ratepositron[10] /. parameters) /. {phi -> 0. , 
          e -> 0.00167}]

M2piK0[t_] = 
      Simplify[K1 . Simplify[a Klongt[t] + b Kshortt[t] /. K0initial]]

rate2pi[t_] = 
      Simplify[Expand[
          M2piK0[t]*(M2piK0[t] /. {I -> -I, -I -> I})]]

tt = Simplify[rate2pi[t] /. {phi -> 0, e -> 0}]

plot3 = LogPlot[tt /. parameters, {t, 3, 8}]

tt1 = Simplify[rate2pi[t] /. {phi -> 0, e -> 0.00167}]

tt2 = Simplify[tt1 /. parameters]

plot4 = LogPlot[Re[tt2], {t, 3, 8}]

tt3 = Simplify[rate2pi[t] /. {phi -> Pi/4, e -> 0.00167}]

tt4 = Simplify[tt3 /. parameters]

plot5 = LogPlot[Re[tt4], {t, 3, 8}]

Show[plot3, plot4, plot5]