Page 1 Source Listing TABU_FW 2014-09-16 16:58 constants.f90 1 !/ ------------------------------------------------------------------- / 2 MODULE CONSTANTS 3 !/ 4 !/ +-----------------------------------+ 5 !/ | WAVEWATCH III NOAA/NCEP | 6 !/ | H. L. Tolman | 7 !/ | FORTRAN 90 | 8 !/ | Last update : 28-Feb-2013 | 9 !/ +-----------------------------------+ 10 !/ 11 !/ 11-Nov-1999 : Fortran 90 version. ( version 2.00 ) 12 !/ 29-May-2009 : Preparing distribution version. ( version 3.14 ) 13 !/ 25-Jun-2011 : Adding Kelvin functions. ( version 4.05 ) 14 !/ 03-Sep-2012 : Adding TSTOUT flag. ( version 4.10 ) 15 !/ 28-Feb-2013 : Adding cap at 0.5 in FWTABLE ( version 4.08 ) 16 !/ 17 !/ Copyright 2009-2012 National Weather Service (NWS), 18 !/ National Oceanic and Atmospheric Administration. All rights 19 !/ reserved. WAVEWATCH III is a trademark of the NWS. 20 !/ No unauthorized use without permission. 21 !/ 22 ! 1. Purpose : 23 ! 24 ! Define some much-used constants for global use (all defined 25 ! as PARAMETER). 26 ! 27 ! 2. Variables and types : 28 ! 29 ! Name Type Scope Description 30 ! ---------------------------------------------------------------- 31 ! GRAV Real Global Acc. of gravity (m/s2) 32 ! DWAT Real Global Density of water (kg/m3) 33 ! DAIR Real Global Density of air (kg/m3) 34 ! NU_AIR Real Global Kinematic viscosity of air (m2/s) 35 ! NU_WATER Real Global Kinematic viscosity of water (m2/s) 36 ! SED_SG Real Global Specific gravity of sediments (N.D.) 37 ! KAPPA Real Global von Karman's constant (N.D.) 38 ! PI Real Global pi. 39 ! TPI Real Global 2pi. 40 ! HPI Real Global 0.5pi. 41 ! TPIINV Real Global 1/2pi. 42 ! HPIINV Real Global 2/pi. 43 ! RADE Real Global Conv. factor from radians to degrees. 44 ! DERA Real Global Conv. factor from degrees to radians. 45 ! RADIUS Real Global Radius of the earth. (m) 46 ! TSTOUT Log. Global Flag for generation of test files. 47 ! ---------------------------------------------------------------- 48 ! 49 ! 5. Remarks 50 ! 51 ! - The flag for generating test output files is included here as 52 ! it is needed in both ww3_shel and ww3_multi at the same time. 53 ! Make sure that this flag is true if you want to weite to the 54 ! test output file ! 55 ! 56 !/ ------------------------------------------------------------------- / 57 !/ Page 2 Source Listing TABU_FW 2014-09-16 16:58 constants.f90 58 LOGICAL, PARAMETER :: TSTOUT = .FALSE. 59 ! 60 REAL, PARAMETER :: GRAV = 9.806 61 REAL, PARAMETER :: DWAT = 1000. 62 REAL, PARAMETER :: DAIR = 1.225 63 REAL, PARAMETER :: nu_air = 1.4E-5 64 !mdo *** Changing nu_water to be consistent with DWAT=1000 (assumes 10degC) 65 REAL, PARAMETER :: nu_water = 1.31E-6 !mdo WAS: 3.E-6 66 REAL, PARAMETER :: sed_sg = 2.65 67 REAL, PARAMETER :: KAPPA = 0.40 !Von Karman's constant 68 ! 69 REAL, PARAMETER :: PI = 3.1415927 70 REAL, PARAMETER :: TPI = 2.0 * PI 71 REAL, PARAMETER :: HPI = 0.5 * PI 72 REAL, PARAMETER :: TPIINV = 1. / TPI 73 REAL, PARAMETER :: HPIINV = 1. / HPI 74 REAL, PARAMETER :: RADE = 180. / PI 75 REAL, PARAMETER :: DERA = PI / 180. 76 ! 77 REAL, PARAMETER :: RADIUS = 4.E7 * TPIINV 78 ! 79 REAL, PARAMETER :: G2PI3I = 1. / ( GRAV**2 * TPI**3 ) 80 REAL, PARAMETER :: G1PI1I = 1. / ( GRAV * TPI ) 81 ! 82 ! Parameters for friction factor table 83 ! 84 INTEGER, PARAMETER :: SIZEFWTABLE=300 85 REAL :: FWTABLE(0:SIZEFWTABLE) 86 REAL :: DELAB 87 REAL, PARAMETER :: ABMIN = -1. 88 REAL, PRIVATE, PARAMETER :: ABMAX = 8. 89 ! 90 CONTAINS 91 ! ---------------------------------------------------------------------- 92 SUBROUTINE TABU_FW 93 !/ 94 !/ +-----------------------------------+ 95 !/ | WAVEWATCH III NOAA/NCEP | 96 !/ | F. Ardhuin | 97 !/ | FORTRAN 90 | 98 !/ | Last update : 28-Feb-2013 | 99 !/ +-----------------------------------+ 100 !/ 101 !/ 19-Oct-2007 : Origination. ( version 3.13 ) 102 !/ 28-Feb-2013 : Caps the friction factor to 0.5 ( version 4.08 ) 103 !/ 104 ! 1. Purpose : 105 ! TO estimate friction coefficients in oscillatory boundary layers 106 ! METHOD. 107 ! tabulation on Kelvin functions 108 ! 109 ! 2. Method : 110 ! 111 ! 3. Parameters : 112 ! 113 ! Parameter list 114 ! ---------------------------------------------------------------- Page 3 Source Listing TABU_FW 2014-09-16 16:58 constants.f90 115 ! ---------------------------------------------------------------- 116 ! 117 ! 4. Subroutines used : 118 ! 119 ! Name Type Module Description 120 ! ---------------------------------------------------------------- 121 ! STRACE Subr. W3SERVMD Subroutine tracing. 122 ! ---------------------------------------------------------------- 123 ! 124 ! 5. Called by : 125 ! 126 ! Name Type Module Description 127 ! ---------------------------------------------------------------- 128 ! WW3_GRID Prog. WW3_GRID Model grid initialization 129 ! ---------------------------------------------------------------- 130 ! 131 ! 6. Error messages : 132 ! 133 ! None. 134 ! 135 ! 7. Remarks : 136 ! 137 ! 8. Structure : 138 ! 139 ! See source code. 140 ! 141 ! 9. Switches : 142 ! 143 ! !/S Enable subroutine tracing. 144 ! 145 ! 10. Source code : 146 ! 147 !/ ------------------------------------------------------------------- / 148 IMPLICIT NONE 149 INTEGER, PARAMETER :: NITER=100 150 REAL , PARAMETER :: XM=0.50, EPS1=0.00001 151 ! VARIABLE. TYPE. PURPOSE. 152 ! *XM* REAL POWER OF TAUW/TAU IN ROUGHNESS LENGTH. 153 ! *XNU* REAL KINEMATIC VISCOSITY OF AIR. 154 ! *NITER* INTEGER NUMBER OF ITERATIONS TO OBTAIN TOTAL STRESS 155 ! *EPS1* REAL SMALL NUMBER TO MAKE SURE THAT A SOLUTION 156 ! IS OBTAINED IN ITERATION WITH TAU>TAUW. 157 ! ---------------------------------------------------------------------- 158 INTEGER I,ITER 159 REAL KER, KEI 160 REAL ABR,ABRLOG,L10,FACT,FSUBW,FSUBWMEMO,dzeta0,dzeta0memo 161 ! 162 DELAB = (ABMAX-ABMIN)/REAL(SIZEFWTABLE) 163 L10=ALOG(10.) 164 DO I=0,SIZEFWTABLE 165 ! 166 ! index I in this table corresponds to a normalized roughness z0/ABR = 10^ABMIN+REAL(I)*DELAB 167 ! 168 ABRLOG=ABMIN+REAL(I)*DELAB 169 ABR=EXP(ABRLOG*L10) 170 FACT=1/ABR/(21.2*KAPPA) 171 FSUBW=0.05 Page 4 Source Listing TABU_FW 2014-09-16 16:58 constants.f90 172 dzeta0=0. 173 DO ITER=1,NITER 174 fsubwmemo=fsubw 175 dzeta0memo=dzeta0 176 dzeta0=fact*fsubw**(-.5) 177 CALL KERKEI(2.*SQRT(dzeta0),ker,kei) 178 fsubw=.08/(ker**2+kei**2) 179 fsubw=.5*(fsubwmemo+fsubw) 180 dzeta0=.5*(dzeta0memo+dzeta0) 181 END DO 182 ! 183 ! Maximum value of 0.5 for fe is based on field 184 ! and lab experiment by Lowe et al. JGR 2005, 2007 185 ! 186 FWTABLE(I) = MIN(fsubw,0.5) 187 ! WRITE(994,*) 'Friction factor:',I,ABR,FWTABLE(I) 188 END DO 189 RETURN 190 END SUBROUTINE TABU_FW ENTRY POINTS Name constants_mp_tabu_fw_ SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References ABMAX Param 162 R(4) 4 scalar PRIV 88,162 ABMIN Param 162 R(4) 4 scalar 162,168 ABR Local 160 R(4) 4 scalar 169,170 ABRLOG Local 160 R(4) 4 scalar 168,169 ALOG Func 163 scalar 163 DELAB Local 162 R(4) 4 scalar 162,168 DZETA0 Local 160 R(4) 4 scalar 172,175,176,177,180 DZETA0MEMO Local 160 R(4) 4 scalar 175,180 EPS1 Param 150 R(4) 4 scalar EXP Func 169 scalar 169 FACT Local 160 R(4) 4 scalar 170,176 FSUBW Local 160 R(4) 4 scalar 171,174,176,178,179,186 FSUBWMEMO Local 160 R(4) 4 scalar 174,179 FWTABLE Local 186 R(4) 4 1 301 186 I Local 158 I(4) 4 scalar 164,168,186 ITER Local 158 I(4) 4 scalar 173 KAPPA Param 170 R(4) 4 scalar 170 KEI Local 159 R(4) 4 scalar 177,178 KER Local 159 R(4) 4 scalar 177,178 L10 Local 160 R(4) 4 scalar 163,169 MIN Func 186 scalar 186 NITER Param 149 I(4) 4 scalar 173 REAL Func 162 scalar 162,168 SIZEFWTABLE Param 162 I(4) 4 scalar 85,162,164 SQRT Func 177 scalar 177 Page 5 Source Listing TABU_FW 2014-09-16 16:58 Symbol Table constants.f90 Name Object Declared Type Bytes Dimen Elements Attributes References TABU_FW Subr 92 XM Param 150 R(4) 4 scalar Page 6 Source Listing TABU_FW 2014-09-16 16:58 constants.f90 191 192 ! ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 193 SUBROUTINE KZEONE(X, Y, RE0, IM0, RE1, IM1) 194 ! June 1999 adaptation to CRESTb, all tests on range of (x,y) have been 195 ! bypassed, we implicitly expect X to be positive or |x,y| non zero 196 ! 197 ! This subroutine is copyright by ACM 198 ! see http://www.acm.org/pubs/copyright_policy/softwareCRnotice.html 199 ! ACM declines any responsibility of any kind 200 ! 201 ! THE VARIABLES X AND Y ARE THE REAL AND IMAGINARY PARTS OF 202 ! THE ARGUMENT OF THE FIRST TWO MODIFIED BESSEL FUNCTIONS 203 ! OF THE SECOND KIND,K0 AND K1. RE0,IM0,RE1 AND IM1 GIVE 204 ! THE REAL AND IMAGINARY PARTS OF EXP(X)*K0 AND EXP(X)*K1, 205 ! RESPECTIVELY. ALTHOUGH THE REAL NOTATION USED IN THIS 206 ! SUBROUTINE MAY SEEM INELEGANT WHEN COMPARED WITH THE 207 ! COMPLEX NOTATION THAT FORTRAN ALLOWS, THIS VERSION RUNS 208 ! ABOUT 30 PERCENT FASTER THAN ONE WRITTEN USING COMPLEX 209 ! VARIABLES. 210 ! ACM Libraries 211 ! ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 212 IMPLICIT NONE 213 DOUBLE PRECISION X, Y, X2, Y2, RE0, IM0, RE1, IM1, & 214 R1, R2, T1, T2, P1, P2, RTERM, ITERM, L 215 DOUBLE PRECISION , PARAMETER, DIMENSION(8) :: EXSQ = & 216 (/ 0.5641003087264D0,0.4120286874989D0,0.1584889157959D0, & 217 0.3078003387255D-1,0.2778068842913D-2,0.1000044412325D-3, & 218 0.1059115547711D-5,0.1522475804254D-8 /) 219 DOUBLE PRECISION , PARAMETER, DIMENSION(8) :: TSQ = & 220 (/ 0.0D0,3.19303633920635D-1,1.29075862295915D0, & 221 2.95837445869665D0,5.40903159724444D0,8.80407957805676D0, & 222 1.34685357432515D1,2.02499163658709D1 /) 223 INTEGER N,M,K 224 ! THE ARRAYS TSQ AND EXSQ CONTAIN THE SQUARE OF THE 225 ! ABSCISSAS AND THE WEIGHT FACTORS USED IN THE GAUSS- 226 ! HERMITE QUADRATURE. 227 R2 = X*X + Y*Y 228 IF (R2.GE.1.96D2) GO TO 50 229 IF (R2.GE.1.849D1) GO TO 30 230 ! THIS SECTION CALCULATES THE FUNCTIONS USING THE SERIES 231 ! EXPANSIONS 232 X2 = X/2.0D0 233 Y2 = Y/2.0D0 234 P1 = X2*X2 235 P2 = Y2*Y2 236 T1 = -(DLOG(P1+P2)/2.0D0+0.5772156649015329D0) 237 ! THE CONSTANT IN THE PRECEDING STATEMENT IS EULER*S 238 ! CONSTANT 239 T2 = -DATAN2(Y,X) 240 X2 = P1 - P2 241 Y2 = X*Y2 242 RTERM = 1.0D0 243 ITERM = 0.0D0 244 RE0 = T1 245 IM0 = T2 246 T1 = T1 + 0.5D0 247 RE1 = T1 Page 7 Source Listing KZEONE 2014-09-16 16:58 constants.f90 248 IM1 = T2 249 P2 = DSQRT(R2) 250 L = 2.106D0*P2 + 4.4D0 251 IF (P2.LT.8.0D-1) L = 2.129D0*P2 + 4.0D0 252 DO 20 N=1,INT(L) 253 P1 = N 254 P2 = N*N 255 R1 = RTERM 256 RTERM = (R1*X2-ITERM*Y2)/P2 257 ITERM = (R1*Y2+ITERM*X2)/P2 258 T1 = T1 + 0.5D0/P1 259 RE0 = RE0 + T1*RTERM - T2*ITERM 260 IM0 = IM0 + T1*ITERM + T2*RTERM 261 P1 = P1 + 1.0D0 262 T1 = T1 + 0.5D0/P1 263 RE1 = RE1 + (T1*RTERM-T2*ITERM)/P1 264 IM1 = IM1 + (T1*ITERM+T2*RTERM)/P1 265 20 CONTINUE 266 R1 = X/R2 - 0.5D0*(X*RE1-Y*IM1) 267 R2 = -Y/R2 - 0.5D0*(X*IM1+Y*RE1) 268 P1 = DEXP(X) 269 RE0 = P1*RE0 270 IM0 = P1*IM0 271 RE1 = P1*R1 272 IM1 = P1*R2 273 RETURN 274 ! THIS SECTION CALCULATES THE FUNCTIONS USING THE INTEGRAL 275 ! REPRESENTATION, EQN 3, EVALUATED WITH 15 POINT GAUSS- 276 ! HERMITE QUADRATURE 277 30 X2 = 2.0D0*X 278 Y2 = 2.0D0*Y 279 R1 = Y2*Y2 280 P1 = DSQRT(X2*X2+R1) 281 P2 = DSQRT(P1+X2) 282 T1 = EXSQ(1)/(2.0D0*P1) 283 RE0 = T1*P2 284 IM0 = T1/P2 285 RE1 = 0.0D0 286 IM1 = 0.0D0 287 DO 40 N=2,8 288 T2 = X2 + TSQ(N) 289 P1 = DSQRT(T2*T2+R1) 290 P2 = DSQRT(P1+T2) 291 T1 = EXSQ(N)/P1 292 RE0 = RE0 + T1*P2 293 IM0 = IM0 + T1/P2 294 T1 = EXSQ(N)*TSQ(N) 295 RE1 = RE1 + T1*P2 296 IM1 = IM1 + T1/P2 297 40 CONTINUE 298 T2 = -Y2*IM0 299 RE1 = RE1/R2 300 R2 = Y2*IM1/R2 301 RTERM = 1.41421356237309D0*DCOS(Y) 302 ITERM = -1.41421356237309D0*DSIN(Y) 303 ! THE CONSTANT IN THE PREVIOUS STATEMENTS IS,OF COURSE, 304 ! SQRT(2.0). Page 8 Source Listing KZEONE 2014-09-16 16:58 constants.f90 305 IM0 = RE0*ITERM + T2*RTERM 306 RE0 = RE0*RTERM - T2*ITERM 307 T1 = RE1*RTERM - R2*ITERM 308 T2 = RE1*ITERM + R2*RTERM 309 RE1 = T1*X + T2*Y 310 IM1 = -T1*Y + T2*X 311 RETURN 312 ! THIS SECTION CALCULATES THE FUNCTIONS USING THE 313 ! ASYMPTOTIC EXPANSIONS 314 50 RTERM = 1.0D0 315 ITERM = 0.0D0 316 RE0 = 1.0D0 317 IM0 = 0.0D0 318 RE1 = 1.0D0 319 IM1 = 0.0D0 320 P1 = 8.0D0*R2 321 P2 = DSQRT(R2) 322 L = 3.91D0+8.12D1/P2 323 R1 = 1.0D0 324 R2 = 1.0D0 325 M = -8 326 K = 3 327 DO 60 N=1,INT(L) 328 M = M + 8 329 K = K - M 330 R1 = FLOAT(K-4)*R1 331 R2 = FLOAT(K)*R2 332 T1 = FLOAT(N)*P1 333 T2 = RTERM 334 RTERM = (T2*X+ITERM*Y)/T1 335 ITERM = (-T2*Y+ITERM*X)/T1 336 RE0 = RE0 + R1*RTERM 337 IM0 = IM0 + R1*ITERM 338 RE1 = RE1 + R2*RTERM 339 IM1 = IM1 + R2*ITERM 340 60 CONTINUE 341 T1 = DSQRT(P2+X) 342 T2 = -Y/T1 343 P1 = 8.86226925452758D-1/P2 344 ! THIS CONSTANT IS SQRT(PI)/2.0, WITH PI=3.14159... 345 RTERM = P1*DCOS(Y) 346 ITERM = -P1*DSIN(Y) 347 R1 = RE0*RTERM - IM0*ITERM 348 R2 = RE0*ITERM + IM0*RTERM 349 RE0 = T1*R1 - T2*R2 350 IM0 = T1*R2 + T2*R1 351 R1 = RE1*RTERM - IM1*ITERM 352 R2 = RE1*ITERM + IM1*RTERM 353 RE1 = T1*R1 - T2*R2 354 IM1 = T1*R2 + T2*R1 355 RETURN 356 END SUBROUTINE KZEONE Page 9 Source Listing KZEONE 2014-09-16 16:58 Entry Points constants.f90 ENTRY POINTS Name constants_mp_kzeone_ SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References 20 Label 265 252 30 Label 277 229 40 Label 297 287 50 Label 314 228 60 Label 340 327 DATAN2 Func 239 scalar 239 DCOS Func 301 scalar 301,345 DEXP Func 268 scalar 268 DLOG Func 236 scalar 236 DSIN Func 302 scalar 302,346 DSQRT Func 249 scalar 249,280,281,289,290,321,341 EXSQ Param 215 R(8) 8 1 8 282,291,294 FLOAT Func 330 scalar 330,331,332 IM0 Dummy 193 R(8) 8 scalar ARG,INOUT 245,260,270,284,293,298,305,317,33 7,347,348,350 IM1 Dummy 193 R(8) 8 scalar ARG,INOUT 248,264,266,267,272,286,296,300,31 0,319,339,351,352,354 INT Func 252 scalar 252,327 ITERM Local 214 R(8) 8 scalar 243,256,257,259,260,263,264,302,30 5,306,307,308,315,334,335,337,339, 346,347,348,351,352 K Local 223 I(4) 4 scalar 326,329,330,331 KZEONE Subr 193 374 L Local 214 R(8) 8 scalar 250,251,252,322,327 M Local 223 I(4) 4 scalar 325,328,329 N Local 223 I(4) 4 scalar 252,253,254,287,288,291,294,327,33 2 P1 Local 214 R(8) 8 scalar 234,236,240,253,258,261,262,263,26 4,268,269,270,271,272,280,281,282, 289,290,291,320,332,343,345,346 P2 Local 214 R(8) 8 scalar 235,236,240,249,250,251,254,256,25 7,281,283,284,290,292,293,295,296, 321,322,341,343 R1 Local 214 R(8) 8 scalar 255,256,257,266,271,279,280,289,32 3,330,336,337,347,349,350,351,353, 354 R2 Local 214 R(8) 8 scalar 227,228,229,249,266,267,272,299,30 0,307,308,320,321,324,331,338,339, 348,349,350,352,353,354 RE0 Dummy 193 R(8) 8 scalar ARG,INOUT 244,259,269,283,292,305,306,316,33 6,347,348,349 RE1 Dummy 193 R(8) 8 scalar ARG,INOUT 247,263,266,267,271,285,295,299,30 7,308,309,318,338,351,352,353 RTERM Local 214 R(8) 8 scalar 242,255,256,259,260,263,264,301,30 Page 10 Source Listing KZEONE 2014-09-16 16:58 Symbol Table constants.f90 Name Object Declared Type Bytes Dimen Elements Attributes References 5,306,307,308,314,333,334,336,338, 345,347,348,351,352 T1 Local 214 R(8) 8 scalar 236,244,246,247,258,259,260,262,26 3,264,282,283,284,291,292,293,294, 295,296,307,309,310,332,334,335,34 1,342,349,350,353,354 T2 Local 214 R(8) 8 scalar 239,245,248,259,260,263,264,288,28 9,290,298,305,306,308,309,310,333, 334,335,342,349,350,353,354 TSQ Param 219 R(8) 8 1 8 288,294 X Dummy 193 R(8) 8 scalar ARG,INOUT 227,232,239,241,266,267,268,277,30 9,310,334,335,341 X2 Local 213 R(8) 8 scalar 232,234,240,256,257,277,280,281,28 8 Y Dummy 193 R(8) 8 scalar ARG,INOUT 227,233,239,266,267,278,301,302,30 9,310,334,335,342,345,346 Y2 Local 213 R(8) 8 scalar 233,235,241,256,257,278,279,298,30 0 Page 11 Source Listing KZEONE 2014-09-16 16:58 constants.f90 357 358 ! ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 359 SUBROUTINE KERKEI(X,KER,KEI) 360 !********************************************************************** 361 ! Computes the values of the zeroth order Kelvin function Ker and Kei 362 ! These functions are used to determine the friction factor fw as a 363 ! function of the bottom roughness length assuming a linear profile 364 ! of eddy viscosity (See Grant and Madsen, 1979) 365 !********************************************************************** 366 IMPLICIT NONE 367 368 DOUBLE PRECISION ZR,ZI,CYR,CYI,CYR1,CYI1 369 INTEGER NZ,IERR 370 REAL X,KER,KEI 371 372 ZR=X*.50D0*SQRT(2.0D0) 373 ZI=ZR 374 CALL KZEONE(ZR, ZI, CYR, CYI,CYR1,CYI1) 375 KER=CYR/EXP(ZR) 376 KEI=CYI/EXP(ZR) 377 END SUBROUTINE KERKEI ENTRY POINTS Name constants_mp_kerkei_ Page 12 Source Listing KERKEI 2014-09-16 16:58 Symbol Table constants.f90 SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References CYI Local 368 R(8) 8 scalar 374,376 CYI1 Local 368 R(8) 8 scalar 374 CYR Local 368 R(8) 8 scalar 374,375 CYR1 Local 368 R(8) 8 scalar 374 EXP Func 375 scalar 375,376 IERR Local 369 I(4) 4 scalar KEI Dummy 359 R(4) 4 scalar ARG,INOUT 376 KER Dummy 359 R(4) 4 scalar ARG,INOUT 375 KERKEI Subr 359 177 NZ Local 369 I(4) 4 scalar SQRT Func 372 scalar 372 X Dummy 359 R(4) 4 scalar ARG,INOUT 372 ZI Local 368 R(8) 8 scalar 373,374 ZR Local 368 R(8) 8 scalar 372,373,374,375,376 Page 13 Source Listing KERKEI 2014-09-16 16:58 constants.f90 378 !/ 379 !/ End of module CONSTANTS ------------------------------------------- / 380 !/ 381 END MODULE CONSTANTS SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References CONSTANTS Module 2 DAIR Param 62 R(4) 4 scalar DERA Param 75 R(4) 4 scalar DWAT Param 61 R(4) 4 scalar G1PI1I Param 80 R(4) 4 scalar G2PI3I Param 79 R(4) 4 scalar GRAV Param 60 R(4) 4 scalar 79,80 HPI Param 71 R(4) 4 scalar 73 HPIINV Param 73 R(4) 4 scalar NU_AIR Param 63 R(4) 4 scalar NU_WATER Param 65 R(4) 4 scalar PI Param 69 R(4) 4 scalar 70,71,74,75 RADE Param 74 R(4) 4 scalar RADIUS Param 77 R(4) 4 scalar SED_SG Param 66 R(4) 4 scalar TPI Param 70 R(4) 4 scalar 72,79,80 TPIINV Param 72 R(4) 4 scalar 77 TSTOUT Param 58 L(4) 4 scalar Page 14 Source Listing KERKEI 2014-09-16 16:58 Subprograms/Common Blocks constants.f90 SUBPROGRAMS/COMMON BLOCKS Name Object Declared Type Bytes Dimen Elements Attributes References CONSTANTS Module 2 KERKEI Subr 359 177 KZEONE Subr 193 374 TABU_FW Subr 92 COMPILER OPTIONS BEING USED -align nocommons -align nodcommons -align noqcommons -align records -align nosequence -align norec1byte -align norec2byte -align norec4byte -align norec8byte -align norec16byte -altparam -assume accuracy_sensitive -assume nobscc -assume nobuffered_io -assume byterecl -assume nocc_omp -assume nocstring -assume nodummy_aliases -assume nofpe_summary -assume noieee_fpe_flags -assume nominus0 -assume noold_boz -assume old_unit_star -assume old_ldout_format -assume noold_logical_ldio -assume old_maxminloc -assume old_xor -assume protect_constants -assume noprotect_parens -assume split_common -assume source_include -assume nostd_intent_in -assume nostd_mod_proc_name -assume norealloc_lhs -assume underscore -assume no2underscores -auto no -auto_scalar no -bintext -ccdefault default -check noargs -check noarg_temp_created -check nobounds -check noformat -check nooutput_conversion -check nooverflow -check nopointers -check power -check noshape -check nounderflow -check nouninitialized -coarray-num-procs 0 no -coarray-config-file -convert big_endian -cross_reference -D __INTEL_COMPILER=1210 -D __unix__ -D __unix -D __linux__ -D __linux -D __gnu_linux__ -D unix -D linux -D __ELF__ -D __x86_64 -D __x86_64__ -D _MT -D __INTEL_COMPILER_BUILD_DATE=20120612 -D __pentium4 -D __pentium4__ -D __tune_pentium4__ -D __SSE2__ -D __SSE3__ -D __SSSE3__ -D __SSE4_1__ -D __SSE4_2__ -D __SSE__ -D __MMX__ -D __AVX__ -double_size 64 no -d_lines no -Qdyncom -error_limit 30 no -f66 no -f77rtl no -fast -fpscomp nofilesfromcmd -fpscomp nogeneral Page 15 Source Listing KERKEI 2014-09-16 16:58 constants.f90 -fpscomp noioformat -fpscomp noldio_spacing -fpscomp nologicals no -fpconstant -fpe3 -fprm nearest no -ftz -fp_model noprecise -fp_model fast -fp_model nostrict -fp_model nosource -fp_model nodouble -fp_model noextended -fp_model novery_fast -fp_model noexcept -fp_model nono_except -heap_arrays 0 no -threadprivate_compat -free -g0 -iface nomixed_str_len_arg -iface nono_mixed_str_len_arg no -intconstant -integer_size 32 no -mixed_str_len_arg no -module -names lowercase no -noinclude -O2 no -pad_source -real_size 32 no -recursive -reentrancy none no -sharable_localsaves -vec=simd -show noinclude -show map -show options no -syntax_only no -threadcom no -U no -vms -w noall -w nonone -w alignments -w noargument_checking -w nodeclarations -w general -w noignore_bounds -w noignore_loc -w nointerfaces -w notruncated_source -w uncalled -w uninitialized -w nounused -w usage -includepath : /gpfs/gp1/usrx/local/intel/composer_xe_2011_sp1.11.339/compiler/include/,.f,./.f,/usrx/local/intel/composerxe/mkl/include/.f, /usrx/local/intel/composerxe/tbb/include/.f,/gpfs/gp1/usrx/local/intel/composer_xe_2011_sp1.11.339/compiler/include/intel64/.f, /gpfs/gp1/usrx/local/intel/composer_xe_2011_sp1.11.339/compiler/include/.f,/usr/local/include/.f,/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/.f, /usr/include/.f,/usr/include/.f -list filename : constants.lst -o filename : none COMPILER: Intel(R) Fortran 12.1-2100