program call_pb c implicit none c real*8 e0,theta,ep ! units of GeV,radians,GeV real*8 xsecqe,xsec_inel,sigmot,sigma real*8 w,q2,thr,enu,f2,R,f1,wsq real*8 asym,xn_aren real*8 xbj,eps,p1,p2,p3,p4,p5,mp,mp2 integer i c mp=.93827 mp2=mp*mp open(2,file='deut_asym_kin.dat') do i=1,100 read(2,*,end=999) q2,xbj,eps,p1,p2,p3,p4,p5,w,theta ! units GeV,GeV2,deg thr=theta/180.*3.14159 e0=5.7525 enu=(w*w+q2-mp2)/2./mp ep=e0-enu call QUASIY8(1.d0,2.0d0,E0,EP,theta,xsecqe) xsecqe=xsecqe*1.0d-03 ! convert to nb/sr/MeV wsq=w*w call f1f2in06(1.d0,2.d0,Q2,wsq,f1,F2,R) xsec_inel=sigmot(E0*1000.,thr)*f2*(1.d0/enu+ & 2.d0*enu*(1.d0+q2/enu**2)*(tan(thr/2.d0))**2/(q2*(1d0+r))) ! 6/03 xsec_inel=xsec_inel*1.0d+4 ! nb/sr/MeV write(*,'(5(f7.4,1x),6e15.5)') e0,ep,theta,q2,w,xsecqe,xsec_inel,xsecqe+xsec_inel,f1,f2,r enddo c 999 end *sigmot real*8 function sigmot(e,thr) implicit none real*8 e, thr, alph, hbarc alph=1.d0/137.03604d0 hbarc=197.3286d0 sigmot=(alph*hbarc*cos(thr/2.d0)/2.d0/e/sin(thr/2.d0)**2)**2 c fm**2/sr return end