00001 #include <iostream>
00002 #include "TPhoton.h"
00003 #define DB(x) #x<<"="<<x<<", "
00004 using namespace std;
00005 void TPhotonI::Init(){
00006
00007
00008 fP0 = gGlobal->Get_XMin()/(1-gGlobal->Get_XMin());
00009 fP1 = gGlobal->Get_XMax()/(1-gGlobal->Get_XMax())/fP0;
00010 fNorm = log(fP1);
00011 fP1 = fNorm;
00012 fBetaI = gGlobal->Get_BetaI();
00013 fLnD = gGlobal->Get_LnD();
00014
00015 }
00016
00017 void TPhotonF::Init(){
00018
00019
00020 fP0 = gGlobal->Get_XMin();
00021 fP1 = gGlobal->Get_XMax()/fP0;
00022 fNorm = log(fP1);
00023 fP1 = fNorm;
00024 fBetaI = gGlobal->Get_BetaI();
00025 fLnD = gGlobal->Get_LnD();
00026
00027 fiBetaI = 1/fBetaI;
00028 double c1 = gGlobal->Get_CosTheta0();
00029 double c2 = -1;
00030 fBt = (1 + fBetaI*c1)/(1 - fBetaI*c1);
00031 fLnD_n = log(1./fBt*(1. + fBetaI*c2)/(1. - fBetaI*c2));
00032
00033 fBt2 = 1 - fBetaI*c1;
00034 fLnD_n2 = log((1. - fBetaI*c2)/(1 - fBetaI*c1));
00035
00036
00037 }
00038
00039 void TPhotonS::Init(){
00040
00041
00042 Init(gGlobal->Get_XMin(), gGlobal->Get_Beta());
00043 fBetaI = gGlobal->Get_BetaI();
00044 fLnD = gGlobal->Get_LnD();
00045 }
00046
00047 void TPhotonS::Init(const double & delta, const double & beta){
00048
00049
00050 fP0 = delta;
00051 fP1 = 2/beta;
00052 fP2 = pow(2/beta*pow(delta,-beta/2),4);
00053 fP3 = 1.-beta/2;
00054 fNorm = pow(pow(delta,beta/2),4);
00055 fBetaI = gGlobal->Get_BetaI();
00056 fLnD = gGlobal->Get_LnD();
00057 }
00058
00059 void TPhotonD::Init(){
00060
00061
00062 Init(gGlobal->Get_XMin(), gGlobal->Get_Beta());
00063 fBetaI = gGlobal->Get_BetaI();
00064 fLnD = gGlobal->Get_LnD();
00065 }
00066
00067 void TPhotonD::Init(const double & delta, const double & beta){
00068
00069
00070 fP0 = delta;
00071 fP1 = 2/beta;
00072 fNorm = pow(delta,beta/2);
00073 fBetaI = gGlobal->Get_BetaI();
00074 fLnD = gGlobal->Get_LnD();
00075 }