Skip to content

Commit

Permalink
Changes in subdirectories for new gfortran treatment of double precision
Browse files Browse the repository at this point in the history
variables and functions.
Garth Huber
Nov 24, 2015
  • Loading branch information
huberg committed Nov 26, 2015
1 parent 6c5267a commit 95b204d
Show file tree
Hide file tree
Showing 14 changed files with 77 additions and 76 deletions.
10 changes: 5 additions & 5 deletions cteq5/Ctq5Pdf.f
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@
C===========================================================================

real*8 Function Ctq5Pdf (Iparton, X, Q)
Implicit Double Precision (A-H,O-Z)
c Implicit Double Precision (A-H,O-Z)
implicit integer (I-N)
Logical Warn
Common
Expand Down Expand Up @@ -112,7 +112,7 @@ real*8 FUNCTION PartonX (IPRTN, X, Q)
C COMMON / CtqPar1 / , this routine fetches u(fl, x, q) at any value of
C x and q using Mth-order polynomial interpolation for x and Ln(Q/Lambda).
C
IMPLICIT DOUBLE PRECISION (A-H, O-Z)
c IMPLICIT DOUBLE PRECISION (A-H, O-Z)
implicit integer (I-N)
C
PARAMETER (MXX = 105, MXQ = 25, MXF = 6)
Expand Down Expand Up @@ -202,7 +202,7 @@ real*8 FUNCTION PartonX (IPRTN, X, Q)
END

Subroutine SetCtq5 (Iset)
Implicit Double Precision (A-H,O-Z)
c Implicit Double Precision (A-H,O-Z)
implicit integer (I-N)
Parameter (Isetmax=9)

Expand Down Expand Up @@ -248,7 +248,7 @@ Subroutine SetCtq5 (Iset)
End

Subroutine ReadTbl (Nu)
Implicit Double Precision (A-H,O-Z)
c Implicit Double Precision (A-H,O-Z)
implicit integer (I-N)
Character Line*80
PARAMETER (MXX = 105, MXQ = 25, MXF = 6)
Expand Down Expand Up @@ -312,7 +312,7 @@ Function NextUn()

SUBROUTINE POLINT (XA,YA,N,X,Y,DY)

IMPLICIT DOUBLE PRECISION (A-H, O-Z)
c IMPLICIT DOUBLE PRECISION (A-H, O-Z)
C Adapted from "Numerical Recipes"
PARAMETER (NMAX=10)
DIMENSION XA(N),YA(N),C(NMAX),D(NMAX)
Expand Down
28 changes: 14 additions & 14 deletions hms/mc_hms.f
Original file line number Diff line number Diff line change
Expand Up @@ -84,13 +84,13 @@ subroutine mc_hms (p_spec, th_spec, dpp, x, y, z, dxdz, dydz,

! z-position of important apertures.
real*8 z_entr,z_exit
parameter (z_entr = 126.2d0 + z_off) !nominally 1.262 m
parameter (z_exit = z_entr + 6.3d0) !6.3 cm thick
parameter (z_entr = 126.2e0 + z_off) !nominally 1.262 m
parameter (z_exit = z_entr + 6.3e0) !6.3 cm thick

real*8 z_dip1,z_dip2,z_dip3 !post dipole apertures
parameter (z_dip1 = 64.77d0) ! end of 26.65 inch pipe.
parameter (z_dip2 = z_dip1 + 297.18d0) !~117 inch pipe.
parameter (z_dip3 = z_dip2 + 115.57d0) ! 45.5 inch pipe.
parameter (z_dip1 = 64.77e0) ! end of 26.65 inch pipe.
parameter (z_dip2 = z_dip1 + 297.18e0) !~117 inch pipe.
parameter (z_dip3 = z_dip2 + 115.57e0) ! 45.5 inch pipe.

! Math constants

Expand Down Expand Up @@ -235,15 +235,15 @@ subroutine mc_hms (p_spec, th_spec, dpp, x, y, z, dxdz, dydz,
! Check aperture at 2/3 of Q1.
call transp(spectr,2,decay_flag,dflag,m2,p,125.233d0,pathlen)
call transp(spectr,2,decay_flag,dflag,m2,p,125.233e0,pathlen)
if ((xs*xs + ys*ys).gt.r_Q1*r_Q1) then
hSTOP_Q1_mid = hSTOP_Q1_mid + 1
goto 500
endif
! Go to Q1 OUT mag boundary.
call transp(spectr,3,decay_flag,dflag,m2,p,62.617d0,pathlen)
call transp(spectr,3,decay_flag,dflag,m2,p,62.617e0,pathlen)
if ((xs*xs + ys*ys).gt.r_Q1*r_Q1) then
hSTOP_Q1_out = hSTOP_Q1_out + 1
goto 500
Expand All @@ -261,15 +261,15 @@ subroutine mc_hms (p_spec, th_spec, dpp, x, y, z, dxdz, dydz,
! Check aperture at 2/3 of Q2.
call transp(spectr,5,decay_flag,dflag,m2,p,143.90d0,pathlen)
call transp(spectr,5,decay_flag,dflag,m2,p,143.90e0,pathlen)
if ((xs*xs + ys*ys).gt.r_Q2*r_Q2) then
hSTOP_Q2_mid = hSTOP_Q2_mid + 1
goto 500
endif
! Go to Q2 OUT mag boundary.
call transp(spectr,6,decay_flag,dflag,m2,p,71.95d0,pathlen)
call transp(spectr,6,decay_flag,dflag,m2,p,71.95e0,pathlen)
if ((xs*xs + ys*ys).gt.r_Q2*r_Q2) then
hSTOP_Q2_out = hSTOP_Q2_out + 1
goto 500
Expand All @@ -287,15 +287,15 @@ subroutine mc_hms (p_spec, th_spec, dpp, x, y, z, dxdz, dydz,
! Check aperture at 2/3 of Q3.
call transp(spectr,8,decay_flag,dflag,m2,p,143.8d0,pathlen)
call transp(spectr,8,decay_flag,dflag,m2,p,143.8e0,pathlen)
if ((xs*xs + ys*ys).gt.r_Q3*r_Q3) then
hSTOP_Q3_mid = hSTOP_Q3_mid + 1
goto 500
endif
! Go to Q3 OUT mag boundary.
call transp(spectr,9,decay_flag,dflag,m2,p,71.9d0,pathlen)
call transp(spectr,9,decay_flag,dflag,m2,p,71.9e0,pathlen)
if ((xs*xs + ys*ys).gt.r_Q3*r_Q3) then
hSTOP_Q3_out = hSTOP_Q3_out + 1
goto 500
Expand All @@ -309,7 +309,7 @@ subroutine mc_hms (p_spec, th_spec, dpp, x, y, z, dxdz, dydz,
call project(xs,ys,zdrift,decay_flag,dflag,m2,p,pathlen) !project and decay
xt=xs
yt=ys
call rotate_haxis(-6.0d0,xt,yt)
call rotate_haxis(-6.0e0,xt,yt)
if (hit_dipole(xt,yt)) then
hSTOP_D1_in = hSTOP_D1_in + 1
goto 500
Expand All @@ -318,10 +318,10 @@ subroutine mc_hms (p_spec, th_spec, dpp, x, y, z, dxdz, dydz,
! Go to D1 OUT magnetic boundary.
! Find intersection with rotated aperture plane.
call transp(spectr,11,decay_flag,dflag,m2,p,526.053d0,pathlen)
call transp(spectr,11,decay_flag,dflag,m2,p,526.053e0,pathlen)
xt=xs
yt=ys
call rotate_haxis(6.0d0,xt,yt)
call rotate_haxis(6.0e0,xt,yt)
if (hit_dipole(xt,yt)) then
hSTOP_D1_out = hSTOP_D1_out + 1
goto 500
Expand Down
2 changes: 1 addition & 1 deletion hms/mc_hms_hut.f
Original file line number Diff line number Diff line change
Expand Up @@ -249,7 +249,7 @@ subroutine mc_hms_hut (m2,p,x_fp,dx_fp,y_fp,dy_fp,ms_flag,wcs_flag,
real*8 radw,drift

real*8 nsig_max
parameter(nsig_max=99.0d0) !max #/sigma for gaussian ran #s.
parameter(nsig_max=99.0e0) !max #/sigma for gaussian ran #s.

C These have to be real*4 for the CERNLIB lfit routine.
real*4 badf !temporaries
Expand Down
2 changes: 1 addition & 1 deletion hms/mc_hms_recon.f
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ subroutine mc_hms_recon (delta_p,delta_t,delta_phi,y_tgt,fry)
hut(3) = ys/100. !cm --> m
hut(4) = dydzs !slope ("radians")
hut(5) = fry/100. !vert. position at target(cm-->m)
if (abs(hut(5)).le.1.d-30) hut(5)=1.d-30
if (abs(hut(5)).le.1.e-30) hut(5)=1.e-30

C Compute COSY sums.

Expand Down
4 changes: 2 additions & 2 deletions poltar/trg_track.f
Original file line number Diff line number Diff line change
Expand Up @@ -771,7 +771,7 @@ subroutine track_to_tgt(delta,y,dx,dy,frx,fry,mom,mass,ctheta,

vel = abs(mom)/sqrt(mom**2+mass**2)*cc
eng = sign(1.,mom)*sqrt(mom**2+mass**2)
mom_0 = mom/(1.d0+delta/100.d0)
mom_0 = mom/(1.e0+delta/100.e0)

vT(1) = -fry + 100.*dx
vT(2) = y + 100.*dy
Expand Down Expand Up @@ -817,7 +817,7 @@ subroutine track_to_tgt(delta,y,dx,dy,frx,fry,mom,mass,ctheta,

call mc_hms_recon(delta,dy,dx,y,xxd)

mom = mom_0*(1.d0+delta/100.d0)
mom = mom_0*(1.e0+delta/100.e0)
vel = abs(mom)/sqrt(mom**2+mass**2)*cc
eng = sign(1.,mom)*sqrt(mom**2+mass**2)

Expand Down
2 changes: 1 addition & 1 deletion shared/musc.f
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ subroutine musc(m2,p,rad_len,dth,dph)
real*8 m2, p

real*8 nsig_max
parameter(nsig_max=99.0d0) !max #/sigma for gaussian ran #s.
parameter(nsig_max=99.0e0) !max #/sigma for gaussian ran #s.

real*8 gauss1

Expand Down
2 changes: 1 addition & 1 deletion shared/musc_ext.f
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ subroutine musc_ext(m2,p,rad_len,x_len,dth,dph,y,x)
real*8 m2, p

real*8 nsig_max
parameter(nsig_max=99.0d0) !max #/sigma for gaussian ran #s.
parameter(nsig_max=99.0e0) !max #/sigma for gaussian ran #s.

real*8 gauss1

Expand Down
46 changes: 23 additions & 23 deletions shared/transp.f
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ subroutine transp(spectr,class,decay_flag,dflag,m2,ph,zd,pathlen)
! integer*4 max_class
! parameter (max_class = 18) !max number of classes
real*8 coeff_min
parameter (coeff_min = 1.0d-14) !coeff's smaller than this = 0
parameter (coeff_min = 1.0e-14) !coeff's smaller than this = 0
C Local declarations.
Expand Down Expand Up @@ -173,9 +173,9 @@ subroutine transp(spectr,class,decay_flag,dflag,m2,ph,zd,pathlen)
C Pack local copy of input coordinates.
ray(1) = xs !cm. ( "X" )
ray(2) = dxdzs*1000.d0 !mrad. ( "THETA" )
ray(2) = dxdzs*1000.e0 !mrad. ( "THETA" )
ray(3) = ys !cm. ( "Y" )
ray(4) = dydzs*1000.d0 !mrad. ( "PHI" )
ray(4) = dydzs*1000.e0 !mrad. ( "PHI" )
ray(5) = dpps !Fractional "Delta P/P"
C Reset COSY sums.
Expand All @@ -188,9 +188,9 @@ subroutine transp(spectr,class,decay_flag,dflag,m2,ph,zd,pathlen)
k = class
do i = 1,n_terms(spectr,k)
term = 1.0d0
term = 1.0e0
do j = 1,5
temp = 1.0d0
temp = 1.0e0
if (expon(spectr,j,i,k).ne.0.) temp = ray(j)**expon(spectr,j,i,k)
term = term*temp
enddo
Expand All @@ -205,9 +205,9 @@ subroutine transp(spectr,class,decay_flag,dflag,m2,ph,zd,pathlen)
C Pathlength correction: real pathlength=nominal-sum(5), so delta_z=-sum(5)
xs = sum(1) !cm
dxdzs = sum(2)/1000.d0 !slope (mr)
dxdzs = sum(2)/1000.e0 !slope (mr)
ys = sum(3) !cm
dydzs = sum(4)/1000.d0 !slope (mr)
dydzs = sum(4)/1000.e0 !slope (mr)
delta_z = -sum(5) !deltaZ (cm)
C Check for decay in 2nd half of element, which is applied AFTER trasnporting.
Expand Down Expand Up @@ -377,26 +377,26 @@ subroutine transp(spectr,class,decay_flag,dflag,m2,ph,zd,pathlen)

if (order.eq.1) then
if (e1.eq.1) then
if (abs(c1-1.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c2-0.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c3-0.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c4-0.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c1-1.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c2-0.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c3-0.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c4-0.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
else if (e2.eq.1) then
driftdist(spectr,kk)=1000.d0*c1 !drift distance in cm.
if (abs(c2-1.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c3-0.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c4-0.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
driftdist(spectr,kk)=1000.e0*c1 !drift distance in cm.
if (abs(c2-1.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c3-0.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c4-0.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
else if (e3.eq.1) then
if (abs(c1-0.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c2-0.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c3-1.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c4-0.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c1-0.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c2-0.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c3-1.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c4-0.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
else if (e4.eq.1) then
if (abs(c1-0.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c2-0.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(driftdist(spectr,kk)-1000.d0*c3).gt.coeff_min)
if (abs(c1-0.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c2-0.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(driftdist(spectr,kk)-1000.e0*c3).gt.coeff_min)
> adrift(spectr,kk)=.false.
if (abs(c4-1.d0) .gt. coeff_min) adrift(spectr,kk)=.false.
if (abs(c4-1.e0) .gt. coeff_min) adrift(spectr,kk)=.false.
endif
else !if order.ne.1
if (abs(csum).gt.coeff_min) adrift(spectr,kk)=.false.
Expand Down
3 changes: 2 additions & 1 deletion shms/mc_shms.f
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,8 @@ subroutine mc_shms(p_spec, th_spec, dpp, x, y, z, dxdz, dydz,
real*8 zd_d1mid5,zd_d1mid6,zd_d1mid7
real*8 zd_d1mex,zd_d1out
real*8 zd_fp
real*4 spec(58)
c real*4 spec(58)
real*8 spec(58)
c parameter(zd_q1in = 307.00)
c parameter(zd_q1mid = 107.00)
Expand Down
2 changes: 1 addition & 1 deletion shms/mc_shms_hut.f
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ subroutine mc_shms_hut (m2,p,x_fp,dx_fp,y_fp,dy_fp,ms_flag,
real*8 tmpran1,tmpran2
real*8 nsig_max
real*8 hdc_del_plane
parameter (nsig_max=99.0d0)
parameter (nsig_max=99.0e0)
c mkj
logical use_det_cut
parameter (use_det_cut=.true.)
Expand Down
2 changes: 1 addition & 1 deletion shms/mc_shms_recon.f
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ subroutine mc_shms_recon (delta_p,delta_t,delta_phi,y_tgt,
hut(3) = ys/100. !Meters
hut(4) = dydzs !Radians
hut(5) = fry/100. !vert. position at target (cm-->m)
if (abs(hut(5)).le.1.d-30) hut(5)=1.d-30
if (abs(hut(5)).le.1.e-30) hut(5)=1.e-30


C Compute COSY sums.
Expand Down
Loading

0 comments on commit 95b204d

Please sign in to comment.