REAL FUNCTION FITEMC_2006(X,A,GOODFIT) !--------------------------------------------------------------------- ! Fit to EMC effect. Steve Rock 8/3/94 ! Funciton returns value of sigma(A)/sigma(d) for isoscaler nucleus ! with A/2 protons=neutrons. ! A= atomic number ! x = Bjorken x. ! ! Fit of sigma(A)/sigma(d) to form C*A**alpha where A is atomic number ! First data at each x was fit to form C*A**alpha. The point A=2(d) ! was included with a value of 1 and an error of about 2%. ! For x>=.125 Javier Gomez fit of 7/93 to E139 data was used. ! For .09 >=x>=.0085 NMC data from Amaudruz et al Z. Phys C. 51,387(91) ! Steve did the fit for alpha and C to the He/d. C/d and Ca/d NMC data. ! Alpha(x) was fit to a 9 term polynomial a0 +a1*x +a2*x**2 + a3*x**3 .. ! C(x) was fit to a 3 term polynomial in natural logs as ! Ln(C) = c0 + c1*Ln(x) + c2*[Ln(x)]**2. ! 6/2/98 ***** Bug (which set x= .00885 if x was out of range) fixed ! also gave value at x=.0085 if x>.88 ! 11/05 PYB PEB modified to use value at x=0.7 if x>0.7, because ! beyond that assume Fermi motion is giving the rise, and we ! already are taking that into account with the y-smearing of ! the inelastic !----------------------------------------------------------------------- IMPLICIT NONE INTEGER I REAL*4 ALPHA, C,LN_C,X,A ,X_U LOGICAL GOODFIT !Chisq= 19. for 30 points !Term Coeficient Error REAL*8 ALPHA_COEF(2,0:8) / > -6.98871401D-02, 6.965D-03, > 2.18888887D+00, 3.792D-01, > -2.46673765D+01, 6.302D+00, > 1.45290967D+02, 4.763D+01, > -4.97236711D+02, 1.920D+02, > 1.01312929D+03, 4.401D+02, > -1.20839250D+03, 5.753D+02, > 7.75766802D+02, 3.991D+02, > -2.05872410D+02, 1.140D+02 / !Chisq= 22. for 30 points !Term Coeficient Error REAL*8 C_COEF(2,0:2) / ! Value and error for 6 term fit to > 1.69029097D-02, 4.137D-03, > 1.80889367D-02, 5.808D-03, > 5.04268396D-03, 1.406D-03 / fitemc_2006 = 1. if(A .lt. 2.5) return c IF( (X.GT.0.88).OR.(X.LT. 0.0085) ) THEN !Out of range of fit IF( (X.GT.0.70).OR.(X.LT. 0.0085) ) THEN !Out of range of fit IF(X.LT. 0.0085) X_U =.0085 c IF(X.GT. 0.88) X_U =.88 IF(X.GT. 0.70) X_U =.70 GOODFIT=.FALSE. ELSE X_U=X GOODFIT=.TRUE. ENDIF LN_C = C_COEF(1,0) DO I =1,2 LN_C = LN_C + C_COEF(1,I) * (ALOG(X_U))**I ENDDO C = EXP(LN_C) ALPHA = ALPHA_COEF(1,0) DO I=1,8 ALPHA = ALPHA + ALPHA_COEF(1,I) * X_U**I ENDDO FITEMC_2006 = C *A**ALPHA RETURN END