/* This file calculates the pion wavefunction. */ /**************************************************************************/ /* */ /* IMPORTANT : all dimensional quantities in this program */ /* are in units GeV */ /* */ /**************************************************************************/ #include /* the function pion_distribution_ampl() returns the asymptotic pion distribution amplitude as function of the quark longitudinal momentum fraction x */ double pion_distribution_ampl(double x) { return sqrt(3.) * F_PI * x * (1. - x); } /* The function pion_wavef_impactpar() returns the pion wavefunction as function of the quark longitudinal momentum fraction x and as function of the transverse distance b (in GeV^-1) between the quark and antiquark. To model the transverse momentum dependence, a gaussian ansatz is used. */ double pion_wavef_impactpar(double x, double b) { double pi_avmom_sqr; pi_avmom_sqr = 8. * pow(PI * F_PI,2.); /* average squared transverse quark momentum in pion wavefunction in units GeV^2 */ return 4. * PI * pion_distribution_ampl(x) * exp(- .5 * pi_avmom_sqr * x * (1. - x) * pow(b,2.)); } /* The function pion_wavef_momspace() returns the pion wavefunction in momentum space as function of the quark longitudinal momentum fraction x and as function of the transverse momentum k_perp between the quark and antiquark. To model the transverse momentum dependence, a gaussian ansatz is used. */ double pion_wavef_momspace(double x, double k_perp) { double pi_avmom_sqr; pi_avmom_sqr = 8. * pow(PI * F_PI,2.); /* average squared transverse quark momentum in pion wavefunction in units GeV^2 */ return 8. * pow(PI,2.) / pi_avmom_sqr * pion_distribution_ampl(x) / (x * (1. - x)) * exp(- .5 * pow(k_perp,2.)/(pi_avmom_sqr * x * (1. - x)) ); }