Skip to content

Instantly share code, notes, and snippets.

@restrepo
Created October 12, 2016 16:24
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save restrepo/998d989105bed213f2f4f8508b10deea to your computer and use it in GitHub Desktop.
Save restrepo/998d989105bed213f2f4f8508b10deea to your computer and use it in GitHub Desktop.
def Fme(x,xmin=0.996,xmax=1.005,xfit=1.001):
"""Fixing near to one values
xmin: close to 1 from below
xmax: close to 1 from above
xfit: optimized 1 limit
"""
x=np.asarray(x)
if x.shape:
x[np.logical_and(x>xmin,x<xmax)]=xfit
else:
if x>xmin and x<xmax:
x=xfit
return (1.-6.*x+3.*x**2+2.*x**3-6*x**2*np.log(x))/(6.*(x-1.)**4)
def LFV(SM,dp,yuk):
'''Oscar Notes with \pi^2 -> \pi
'''
import numpy as np
const=False
SM=pd.Series(SM)
y=np.matrix(yuk)
dp=pd.Series(dp)
FMl=[]
for i in range(1,4):
dp['Mtrp%d' %i]=dp['Mtr0%d' %i] #degenerate fermions
FMl.append(1./(dp.MHC**2)*Fme(dp['Mtr0%d' %i]**2/dp.MHC**2)\
-1./(dp['Mtr0%d' %i]**2)*( Fme(dp.MH0**2/dp['Mtrp%d' %i]**2)\
+ Fme(dp.MA0**2/dp['Mtrp%d' %i]**2) ) )
FM=np.matrix(np.diag(FMl))
Brmueg =(3.*SM.alpha_em/(4.*16.*np.pi*SM.G_F**2)*np.abs(y[:,0].T*FM*y[:,1].conjugate())**2)[0,0]
Brtaumug=(3.*SM.alpha_em/(4.*16.*np.pi*SM.G_F**2)*np.abs(y[:,1].T*FM*y[:,2].conjugate())**2)[0,0]
if (Brmueg<5.7e-13):
if (Brtaumug<4.5e-8):
const=True
return Brmueg,Brtaumug,const
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment