//-------------------------------------------------------------------------- // // Environment: // This software is part of the EvtGen package developed jointly // for the BaBar and CLEO collaborations. If you use all or part // of it, please give an appropriate acknowledgement. // // Copyright Information: See EvtGen/COPYRIGHT // Copyright (C) 1998 Caltech, UCSB // // Module: EvtHQETFF.cc // // Description: form factors for B->D*lnu according to HQET // // Modification history: // // DJL April 17, 1998 Module created // //------------------------------------------------------------------------ // #include "EvtGenBase/EvtPatches.hh" #include "EvtGenBase/EvtPatches.hh" #include "EvtGenBase/EvtReport.hh" #include "EvtGenModels/EvtHQETFF.hh" #include "EvtGenBase/EvtId.hh" #include #include "EvtGenBase/EvtPDL.hh" #include #include EvtHQETFF::EvtHQETFF(double hqetrho2, double hqetr1, double hqetr2, double quadTerm) { rho2 = hqetrho2; r1 = hqetr1; r2 = hqetr2; c = quadTerm; return; } EvtHQETFF::EvtHQETFF(double hqetrho2, double quadTerm) { rho2 = hqetrho2; c = quadTerm; return; } void EvtHQETFF::getscalarff(EvtId parent,EvtId, double t, double mass, double *f0p, double *f0m) { double mb=EvtPDL::getMeanMass(parent); double w = ((mb*mb)+(mass*mass)-t)/(2.0*mb*mass); // Form factors have a general form, with parameters passed in // from the arguements. double ha1 = 1-rho2*(w-1)+c*(w-1)*(w-1); *f0p=ha1; *f0m = 0.0; return; } void EvtHQETFF::getvectorff(EvtId parent,EvtId, double t, double mass, double *a1f, double *a2f, double *vf, double *a0f ){ double mb=EvtPDL::getMeanMass(parent); double w = ((mb*mb)+(mass*mass)-t)/(2.0*mb*mass); // Form factors have a general form, with parameters passed in // from the arguements. double rstar = ( 2.0*sqrt(mb*mass))/(mb+mass); double ha1 = 1-rho2*(w-1); *a1f = (1.0 - (t/((mb+mass)*(mb+mass))))*ha1; *a1f = (*a1f)/rstar; *a2f = (r2/rstar)*ha1; *vf = (r1/rstar)*ha1; *a0f = 0.0; return; } void EvtHQETFF::gettensorff(EvtId, EvtId, double, double, double*, double*, double*, double*){ report(ERROR,"EvtGen") << "Not implemented :gettensorff in EvtHQETFF.\n"; ::abort(); } void EvtHQETFF::getbaryonff(EvtId, EvtId, double, double, double*, double*, double*, double*){ report(ERROR,"EvtGen") << "Not implemented :getbaryonff in EvtHQETFF.\n"; ::abort(); }