function wtn(q2_set) include ? real p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12 real nsigl,nsigt,nsiglt,nsigtt real nsig219,nsig,wtn real ft,tav,ftav real pi,mtar_gev real my_limit integer q2_set parameter (pi=3.14159) parameter (mtar_gev=0.9395653) if (abs(q2_set-055).lt.1) then p1= 0.58923E+03 p2= -0.20500E+03 p3= -0.28669E+02 p4= 0.10000E+02 p5= 0.00000E+00 p6= 0.31777E+02 p7= 0.19967E+02 p8= 0.45000E+02 p9= -0.20000E+03 p10=-0.20000E+02 p11= 0.00000E+00 p12=-0.92659E+02 elseif (abs(q2_set-060).lt.1) then p1= 0.42463E+03 p2= -0.20500E+03 p3= -0.19031E+02 p4= 0.10000E+02 p5= 0.00000E+00 p6= 0.37387E+02 p7= -0.20884E+02 p8= 0.45000E+02 p9= -0.20000E+03 p10=-0.20000E+02 p11= 0.00000E+00 p12=-0.82691E+02 elseif (abs(q2_set-065).lt.1) then p1= 0.27955E+03 p2= -0.20500E+03 p3= -0.11278E+02 p4= 0.10000E+02 p5= 0.00000E+00 p6= 0.36616E+02 p7= -0.58716E+02 p8= 0.45000E+02 p9= -0.20000E+03 p10=-0.20000E+02 p11= 0.00000E+00 p12=-0.88789E+02 elseif (abs(q2_set-075).lt.1) then p1= 0.42000E+03 p2= -0.20500E+03 p3= -0.16000E+02 p4= 0.10000E+02 p5= 0.00000E+00 p6= 0.35000E+02 p7= -0.50000E+02 p8= 0.45000E+02 p9= -0.20000E+03 p10=-0.20000E+02 p11= 0.00000E+00 p12=-0.90000E+02 elseif (abs(q2_set-100).lt.1) then p1= 0.45848E+03 p2= -0.20500E+03 p3= -0.15782E+02 p4= 0.10000E+02 p5= 0.00000E+00 p6= 0.35027E+02 p7= -0.41985E+02 p8= 0.45000E+02 p9= -0.20000E+03 p10=-0.20000E+02 p11= 0.00000E+00 p12=-0.94791E+02 elseif (abs(q2_set-160).lt.1) then p1= 0.40022E+03 p2= -0.20500E+03 p3= -0.16163E+02 p4= 0.10000E+02 p5= 0.00000E+00 p6= 0.35025E+02 p7= -0.29050E+02 p8= 0.45000E+02 p9= -0.20000E+03 p10=-0.20000E+02 p11= 0.00000E+00 p12=-0.39987E+02 else write(*,*)'wtn: q2 error ',q2_set endif *** * Cornel's parameterization c nsigl=(p1+p2*Q2i)*exp((p3+p4*Q2i)*ti) c nsigt=(p5+p6*Q2i)*exp((p7+p8*Q2i)*ti) c c tmp=ti/(ti+0.02)**2 c nsiglt=p9*exp(p10*ti)*sin(thetacmi) c nsigtt=(p11/Q2i+p12/Q2i**2)*tmp*sin(thetacmi)**2 c * New parameterization suggested by Henk, 11.04.27 c nsigl=(p1+p2*Q2i)*exp((p3+p4*log(Q2i))*ti) c nsigt=(p5/Q2i+p6/Q2i**2)*exp((p7+p8*log(Q2i))*ti) c nsiglt=p9*exp(p10*ti)*sin(thetacmi) c c tmp=ti/(ti+0.02)**2 c nsigtt=(p11/Q2i+p12/Q2i**2)*tmp*sin(thetacmi)**2 c * Revised parameterization after IT11, 12.04.03 c tmp=ti/(ti+0.139570**2)**2 c c nsigl=(p1+p2*log(Q2i))*exp((p3+p4*log(Q2i))*ti) c nsigt=p5+p6*log(Q2i)+(p7/Q2i**2+p8)*ti c nsiglt=p9*exp(p10*ti)*sin(thetacmi) c nsigtt=(p11/Q2i+p12/Q2i**2)*tmp*sin(thetacmi)**2 c * Revised parameterization after IT19, 12.05.11 ft=ti/(ti+0.139570**2)**2 tav=(0.105+0.04*log(Q2i))*Q2i ftav=(ti-tav)/tav c nsigl=(p1+p2*log(Q2i))*exp((p3+p4*log(Q2i))*ti) c nsigt=p5+p6/Q2i**2+(p7+p8*log(Q2i))*ftav c nsiglt=p9*exp(p10*ti)*sin(thetacmi) c nsigtt=(p11/Q2i+p12/Q2i**2)*ft*sin(thetacmi)**2 * Minor Revisions after IT26, 12.05.19 nsigl=(p1+p2*log(Q2i))*exp((p3+p4*log(Q2i))*ti) nsigt=p5+p6/(Q2i**2+0.10)+(p7+p8*log(Q2i))*ftav nsiglt=p9*exp(p10*ti)*sin(thetacmi) nsigtt=(p11/Q2i+p12/(Q2i**2+0.20))*ft*sin(thetacmi)**2 nsig219=(nsigt+epsiloni*nsigl+epsiloni*cos(2.*phicmi)*nsigtt 1 +sqrt(2.0*epsiloni*(1.+epsiloni))*cos(phicmi)*nsiglt)/1.d0 wfactor=1.D0/(Wcmi**2-mtar_gev**2)**2 nsig=nsig219*wfactor nsig=nsig/2./pi/1.d+06 !dsig/dtdphicm in microbarns/MeV**2/rad wtn=Weight*nsig/dsigdt my_limit=0.20 if ((wtn.lt.my_limit).and.(wtn.gt.0.0)) then continue else wtn=0. endif return end