THDMfunctions.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015 HEPfit Collaboration
3  * All rights reserved.
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #include "THDMfunctions.h"
9 #include "StandardModel.h"
10 
12 {
13  return 0;
14 }
15 
16 
17 
18 gslpp::complex THDMfunctions::f_func(const double x) const{
19  if(x<1) {
21  return -pow(log((1+sqrt(1-x))/(1-sqrt(1-x)))+z,2)/4.0;
22  }
23  else {
24  return pow(asin(sqrt(1.0/x)),2);
25  }
26 }
27 
28 
29 
30 gslpp::complex THDMfunctions::g_func(const double x) const{
31  if(x<1) {
33  gslpp::complex gs1 = sqrt(1-x)*(log((1+sqrt(1-x))/(1-sqrt(1-x)))+z)/2.0;
34  return gs1;
35  }
36  else {
37  gslpp::complex gg1 = sqrt(x-1)*asin(sqrt(1.0/x));
38  return gg1;
39  }
40 }
41 
42 
43 
44 gslpp::complex THDMfunctions::Int1(const double tau, const double lambda) const{
45  return tau*lambda/(tau-lambda)/2.0+tau*tau*lambda*lambda/((tau-lambda)
46  *(tau-lambda))/2.0*(f_func(tau)-f_func(lambda))+tau*tau*lambda/((tau-lambda)
47  *(tau-lambda))*(g_func(tau)-g_func(lambda));
48  }
49 
50 
51 
52 gslpp::complex THDMfunctions::Int2(const double tau, const double lambda) const{
53  return -tau*lambda/(tau-lambda)/2.0*(f_func(tau)-f_func(lambda));
54  }
55 
56 
57 
58 int THDMfunctions::HSTheta (const double x) const{
59  if(x<0)return 0.0;
60  else return 1.0;
61 }
62 
63 
64 
65 double THDMfunctions::KaellenFunction (const double a, const double b, const double c) const{
66  double x = (a*a-b*b-c*c)*(a*a-b*b-c*c)-4.0*b*b*c*c;
67  return HSTheta(x)*sqrt(std::abs(x))/(2.0*a);
68 }
double computeThValue()
Empty function.
complex pow(const complex &z1, const complex &z2)
int HSTheta(const double x) const
Heaviside function.
double KaellenFunction(const double a, const double b, const double c) const
Kaellen function.
static const complex & i()
gslpp::complex Int2(const double tau, const double lambda) const
function for Z gamma coupling to h, H and A
gslpp::complex f_func(const double x) const
f function for the gamma gamma coupling to h, H and A
gslpp::complex g_func(const double x) const
g function for the Int1 function
complex log(const complex &z)
A class for defining operations on and functions of complex numbers.
Definition: gslpp_complex.h:35
gslpp::complex Int1(const double tau, const double lambda) const
function for Z gamma coupling to h, H and A
complex sqrt(const complex &z)