/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Generator/BesEvtGen/BesEvtGen-00-03-58/user/Lenu.inc

Go to the documentation of this file.
00001 double  EvtDecay::ampsLenu(std::vector<double> Vexp,std::vector<double> vpars){
00002 //Lambda_c->Lambda e nu 
00003   //vpars =<f1,f2>
00004   //Vexp =<thetaW,thetaL,qw>
00005   //ref: PRL 75, p624, Eq (1)
00006   double theAmps=0; 
00007   double thetaw=Vexp[0]; //theta_W
00008   double thetaL=Vexp[1]; //theta_Lambda
00009   double qw    =Vexp[2]; // q: the mass of the virtual W
00010   double aL    =0.642;
00011   double cosw=cos(thetaw);
00012   double cosL=cos(thetaL);
00013   double sinw=sin(thetaw);
00014   double mLam=1.115683;
00015   double mLamc=2.28646;
00016   double mLamc2 = mLamc*mLamc;
00017   double mLam2 = mLam*mLam;
00018   double m12p2  = (mLam+qw)*(mLam+qw);
00019   double m12m2  = (mLam-qw)*(mLam-qw);
00020   double PL  = sqrt((mLamc2-m12p2)*(mLamc2-m12m2))/2/mLamc;
00021   theAmps = qw*qw*PL/2/mLamc2;
00022   double H1=HV(0.5,1.0,Vexp,vpars)+HA(0.5,1.0,Vexp,vpars);
00023   double H2=HV(0.5,1.0,Vexp,vpars)-HA(0.5,1.0,Vexp,vpars);
00024   double H3=HV(0.5,0.0,Vexp,vpars)+HA(0.5,0.0,Vexp,vpars);
00025   double H4=HV(0.5,0.0,Vexp,vpars)-HA(0.5,0.0,Vexp,vpars);
00026   double term0=3./8*(1-cosw)*(1-cosw)*(1+aL*cosL)*H1*H1;
00027   double term1=3./8.*(1+cosw)*(1+cosw)*(1-aL*cosL)*H2*H2;
00028   double term2=3./4.*sinw*sinw*(1+aL*cosL)*H3*H3;
00029   double term3=3./4.*sinw*sinw*(1-aL*cosL)*H4*H4;
00030   double terms=term0+term1+term2+term3;
00031   theAmps *= terms;
00032   return theAmps;
00033 }
00034 
00035 double  EvtDecay::ampsLbenu(std::vector<double> Vexp,std::vector<double> vpars){
00036 //Lambda_c->Lambda e nu 
00037   double theAmps=0; 
00038   double thetaw=Vexp[0]; //theta_W
00039   double thetaL=Vexp[1]; //theta_Lambda
00040   double qw    =Vexp[2]; // q: the mass of the virtual W
00041   double aL    =-0.642;
00042   double cosw=cos(thetaw);
00043   double cosL=cos(thetaL);
00044   double sinw=sin(thetaw);
00045   double mLam=1.115683;
00046   double mLamc=2.28646;
00047   double mLamc2 = mLamc*mLamc;
00048   double mLam2 = mLam*mLam;
00049   double m12p2  = (mLam+qw)*(mLam+qw);
00050   double m12m2  = (mLam-qw)*(mLam-qw);
00051   double PL  = sqrt((mLamc2-m12p2)*(mLamc2-m12m2))/2/mLamc;
00052   theAmps = qw*qw*PL/2/mLamc2;
00053   double H1=HV(0.5,1.0,Vexp,vpars)+HA(0.5,1.0,Vexp,vpars);
00054   double H2=HV(0.5,1.0,Vexp,vpars)-HA(0.5,1.0,Vexp,vpars);
00055   double H3=HV(0.5,0.0,Vexp,vpars)+HA(0.5,0.0,Vexp,vpars);
00056   double H4=HV(0.5,0.0,Vexp,vpars)-HA(0.5,0.0,Vexp,vpars);
00057   double term0=3./8*(1-cosw)*(1-cosw)*(1+aL*cosL)*H1*H1;
00058   double term1=3./8.*(1+cosw)*(1+cosw)*(1-aL*cosL)*H2*H2;
00059   double term2=3./4.*sinw*sinw*(1+aL*cosL)*H3*H3;
00060   double term3=3./4.*sinw*sinw*(1-aL*cosL)*H4*H4;
00061   double terms=term0+term1+term2+term3;
00062   theAmps *= terms;
00063   return theAmps;
00064 }                   
00065 
00066 double EvtDecay::HV(double i,double j,std::vector<double> Vexp, std::vector<double> vpars){
00067     //vpars =<f1,f2>
00068     //Vexp =<thetaW,thetaL,qw>
00069     //ref: PRL 75, p624, Eq (1)
00070     double myhv=0;
00071     double thetaw=Vexp[0]; //theta_W
00072     double thetaL=Vexp[1]; //theta_Lambda
00073     double qw    =Vexp[2]; // q: the mass of the virtual W
00074     double mLam=1.115683;
00075     double mLamc=2.28646;
00076     double Qp=(mLamc+mLam)*(mLamc+mLam)-qw*qw; 
00077     double Qm=(mLamc-mLam)*(mLamc-mLam)-qw*qw;
00078     double FV1 = vpars[0]+mLam/mLamc*vpars[1];
00079     double FV2 = 1./mLamc*vpars[1];
00080     double FA1 = -FV1;
00081     double FA2 = -FV2;
00082     if(Qp<0 || Qm<0){ std::cout<<"Qp,Qm"<<Qp<<" "<<Qm<<std::endl;abort();}
00083     if(i==0.5 && j==0 ){
00084       myhv = sqrt(Qm)/qw*((mLam+mLamc)*FV1 - qw*qw*FV2 );
00085     }else if(i==0.5 && j==1){
00086       myhv = sqrt(2*Qm)*(-FV1+(mLamc+mLam)*FV2 );
00087     }else{std::cout<<"AngFitFCN::HV::Bad helicity"<<std::endl;abort();}
00088     //std::cout<<"HV: "<<myhv<<std::endl;
00089     return myhv;
00090   }
00091 
00092 double EvtDecay::HA(double i,double j,std::vector<double> Vexp, std::vector<double> vpars){
00093     //vpars =<f1,f2>
00094     //Vexp =<thetaW,thetaL,qw>
00095     //ref: PRL 75, p624, Eq (1)
00096     double myhv=0;
00097     double thetaw=Vexp[0]; //theta_W
00098     double thetaL=Vexp[1]; //theta_Lambda
00099     double qw    =Vexp[2]; // q: the mass of the virtual W
00100     double mLam=1.115683;
00101     double mLamc=2.28646;
00102     double Qp=(mLamc+mLam)*(mLamc+mLam)-qw*qw; 
00103     double Qm=(mLamc-mLam)*(mLamc-mLam)-qw*qw;
00104     double FV1 = vpars[0]+mLam/mLamc*vpars[1];
00105     double FV2 = 1./mLamc*vpars[1];
00106     double FA1 = -FV1;
00107     double FA2 = -FV2;
00108     if(i==0.5 && j==0 ){
00109       myhv = sqrt(Qp)/qw*((mLamc-mLam)*FA1 + qw*qw*FA2 );
00110     }else if(i==0.5 && j==1){
00111       myhv = sqrt(2*Qp)*(-FA1+(mLamc-mLam)*FA2 );
00112     }else{std::cout<<"AngFitFCN::HA::Bad helicity"<<std::endl;abort();}
00113     //std::cout<<"HA: "<<myhv<<std::endl;
00114     return myhv;
00115   }

Generated on Tue Nov 29 23:12:25 2016 for BOSS_7.0.2 by  doxygen 1.4.7