Page 1 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 1 !/ ------------------------------------------------------------------- / 2 MODULE W3IOGRMD 3 !/ 4 !/ +-----------------------------------+ 5 !/ | WAVEWATCH III NOAA/NCEP | 6 !/ | H. L. Tolman | 7 !/ ! F. Ardhuin ! 8 !/ | FORTRAN 90 | 9 !/ | Last update : 11-Nov-2013 | 10 !/ +-----------------------------------+ 11 !/ 12 !/ For updates see W3IOGR documentation. 13 !/ 12-Dec-2012 : Adding SMC grid. JG_Li ( version 4.08 ) 14 !/ 16-Sep-2013 : Add Arctic part in SMC grid. ( version 4.11 ) 15 !/ 11-Nov-2013 : SMC and rotated grid incorporated in the main 16 !/ trunk ( version 4.13 ) 17 !/ 18 ! 1. Purpose : 19 ! 20 ! Reading/writing of model definition file . 21 ! 22 ! 2. Variables and types : 23 ! 24 ! Name Type Scope Description 25 ! ---------------------------------------------------------------- 26 ! VERGRD C*10 Private Model definition file version number. 27 ! IDSTR C*35 Private Model definition file ID string. 28 ! ---------------------------------------------------------------- 29 ! 30 ! 3. Subroutines and functions : 31 ! 32 ! Name Type Scope Description 33 ! ---------------------------------------------------------------- 34 ! W3IOGR Subr. Public Read/write model definition file. 35 ! ---------------------------------------------------------------- 36 ! 37 ! 4. Subroutines and functions used : 38 ! 39 ! Name Type Module Description 40 ! ---------------------------------------------------------------- 41 ! W3SETG Subr. W3GDATMD Point to data structure for spatial gr. 42 ! W3DIMX Subr. Id. Set up arrays for spatial grid. 43 ! W3DIMS Subr. Id. Set array dimensions for a spec. grid. 44 ! W3SETO Subr. W3ODATMD Point to data structure for spatial gr. 45 ! W3DMO5 Subr. Id. Set array dimensions. 46 ! INPTAB Subr. W3SRC2MD Fill interpolation tables for 47 ! dispersion relation. 48 ! DISTAB Subr. W3DISPMD Input coefficient lookup table. 49 ! INSNL1 Subr. W3SNL1MD Initialization of the DIA. 50 ! INSNL2 Subr. W3SNL2MD Initialization of WRT. 51 ! INSNL3 Subr. W3SNL3MD Initialization of GMD. 52 ! INSNLX Subr. W3SNLXMD Initialization of exp. DIA. 53 ! INSNLS Subr. W3SNLSMD Initialization of nonlinear `smoother'. 54 ! STRACE Subr. W3SERVMD Subroutine tracing. 55 ! EXTCDE Subr. W3SERVMD Abort program with exit code. 56 ! ---------------------------------------------------------------- 57 ! Page 2 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 58 ! 5. Remarks : 59 ! 60 ! - Arrays allocated here on read or ing ww3_grid on write. 61 ! 62 ! 6. Switches : 63 ! 64 ! See subroutine. 65 ! 66 ! 7. Source code : 67 ! 68 !/ ------------------------------------------------------------------- / 69 PUBLIC 70 !/ 71 !/ Private parameter statements (ID strings) 72 !/ 73 CHARACTER(LEN=10), PARAMETER, PRIVATE :: VERGRD = 'III 4.03 ' 74 CHARACTER(LEN=35), PARAMETER, PRIVATE :: & 75 IDSTR = 'WAVEWATCH III MODEL DEFINITION FILE' 76 !/ 77 !/ Public variables 78 !/ 79 !/ 80 CONTAINS 81 !/ ------------------------------------------------------------------- / 82 SUBROUTINE W3IOGR ( INXOUT, NDSM, IMOD, FEXT ) 83 !/ 84 !/ +-----------------------------------+ 85 !/ | WAVEWATCH III NOAA/NCEP | 86 !/ | H. L. Tolman | 87 !/ ! F. Ardhuin ! 88 !/ | FORTRAN 90 | 89 !/ | Last update : 01-Jul-2013 | 90 !/ +-----------------------------------+ 91 !/ 92 !/ 14-Jan-1999 : Distributed FORTRAN 77 version. ( version 1.18 ) 93 !/ 04-Feb-2000 : Upgrade to FORTRAN 90 ( version 2.00 ) 94 !/ Major changes to logistics. 95 !/ 14-Feb-2000 : Exact-NL added. ( version 2.01 ) 96 !/ 09-Jan-2001 : Flat grid option. ( version 2.06 ) 97 !/ 02-Feb-2001 : Exact-NL version 3.0 ( version 2.07 ) 98 !/ 27-Feb-2001 : Third propagation scheme added. ( version 2.08 ) 99 !/ 16-Mar-2001 : Fourth propagation scheme added. ( version 2.09 ) 100 !/ 29-Mar-2001 : Sub-grid islands added. ( version 2.10 ) 101 !/ 11-Jan-2002 : Sub-grid ice added. ( version 2.15 ) 102 !/ 09-May-2002 : Switch clean up. ( version 2.21 ) 103 !/ 27-Aug-2002 : Exact-NL version 4.0 ( version 2.22 ) 104 !/ 26-Nov-2002 : Adding first VDIA and MDIA. ( version 3.01 ) 105 !/ 01-Aug-2003 : Adding moving grid GSE correction. ( version 3.03 ) 106 !/ 08-Mar-2004 : Multiple grid version. ( version 3.06 ) 107 !/ 04-May-2005 : Change to MPI_COMM_WAVE. ( version 3.07 ) 108 !/ 24-Jun-2005 : Add MAPST2 processing. ( version 3.07 ) 109 !/ 09-Nov-2005 : Remove soft boundary options. ( version 3.08 ) 110 !/ 23-Jun-2006 : Add W3SLN1 parameters. ( version 3.09 ) 111 !/ 27-Jun-2006 : Adding file name preamble. ( version 3.09 ) 112 !/ 25-Jul-2006 : Reorder for 'GRID' option to read ( version 3.10 ) 113 !/ spectral data also. 114 !/ 28-Oct-2006 : Add partitioning pars. ( version 3.10 ) Page 3 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 115 !/ 26-Mar-2007 : Add partitioning pars. ( version 3.11 ) 116 !/ 16-Apr-2006 : Add Miche limiter pars. ( version 3.11 ) 117 !/ 25-Apr-2007 : Adding Battjes-Janssen Sdb. ( version 3.11 ) 118 !/ 09-Oct-2007 : Adding WAM cycle 4+ Sin and Sds. ( version 3.13 ) 119 !/ 29-May-2009 : Preparing distribution version. ( version 3.14 ) 120 !/ 30-Oct-2009 : Fix ndst arg in call to w3dmo5. ( version 3.14 ) 121 !/ (T. J. Campbell, NRL) 122 !/ 30-Oct-2009 : Implement curvilinear grid type. ( version 3.14 ) 123 !/ (W. E. Rogers & T. J. Campbell, NRL) 124 !/ 23-Dec-2009 : Addition of COU namelists ( version 3.14 ) 125 !/ 23-Jun-2010 : Addition of US3DF namelists ( version 3.14 ) 126 !/ 31-Oct-2010 : Implement unstructured grids ( version 3.14 ) 127 !/ (A. Roland and F. Ardhuin) 128 !/ 06-Dec-2010 : Change from GLOBAL (logical) to ICLOSE (integer) to 129 !/ specify index closure for a grid. ( version 3.14 ) 130 !/ (T. J. Campbell, NRL) 131 !/ 12-Jun-2012 : Add /RTD option or rotated grid option. 132 !/ (Jian-Guo Li) ( version 4.06 ) 133 !/ 13-Jul-2012 : Move GMD (SNL3) and nonlinear filter (SNLS) 134 !/ from 3.15 (HLT). ( version 4.08 ) 135 !/ 19-Dec-2012 : Add NOSWLL to file. ( version 4.11 ) 136 !/ 01-Jul-2013 : Document UQ / UNO switches in file ( version 4.12 ) 137 !/ 138 !/ Copyright 2009-2013 National Weather Service (NWS), 139 !/ National Oceanic and Atmospheric Administration. All rights 140 !/ reserved. WAVEWATCH III is a trademark of the NWS. 141 !/ No unauthorized use without permission. 142 !/ 143 ! 1. Purpose : 144 ! 145 ! Reading and writing of the model definition file. 146 ! 147 ! 2. Method : 148 ! 149 ! The file is opened within the routine, the name is pre-defined 150 ! and the unit number is given in the parameter list. The model 151 ! definition file is written using UNFORMATTED write statements. 152 ! 153 ! 3. Parameters : 154 ! 155 ! Parameter list 156 ! ---------------------------------------------------------------- 157 ! INXOUT C*(*) I Test string for read/write, valid are: 158 ! 'READ', 'WRITE' and 'GRID'. 159 ! NDSM Int. I File unit number. 160 ! IMOD Int. I Model number for W3GDAT etc. 161 ! FEXT C*(*) I File extension to be used. 162 ! ---------------------------------------------------------------- 163 ! 164 ! 4. Subroutines used : 165 ! 166 ! See above. 167 ! 168 ! 5. Called by : 169 ! 170 ! Name Type Module Description 171 ! ---------------------------------------------------------------- Page 4 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 172 ! W3INIT Subr. W3INITMD Wave model initialization routine. 173 ! ...... Prog. N/A All WAVEWATCH III aux programs and 174 ! drivers. 175 ! ---------------------------------------------------------------- 176 ! 177 ! 6. Error messages : 178 ! 179 ! Tests on INXOUT, file status and on array dimensions. 180 ! 181 ! 7. Remarks : 182 ! 183 ! - The model definition file has the pre-defined name 184 ! 'mod_def.FILEXT'. 185 ! 186 ! 8. Structure : 187 ! 188 ! See source code. 189 ! 190 ! 9. Switches : 191 ! 192 ! !/MPI MPI calls 193 ! 194 ! !/LNn Select source terms 195 ! !/STn 196 ! !/NLn 197 ! !/BTn 198 ! !/DBn 199 ! !/TRn 200 ! !/BSn 201 ! !/XXn 202 ! 203 ! !/S Enable subroutine tracing. 204 ! !/T Enable test output 205 ! 206 ! 10. Source code : 207 ! 208 !/ ------------------------------------------------------------------- / 209 USE CONSTANTS 210 USE W3GDATMD 211 USE W3ODATMD 212 USE W3SRC4MD, ONLY: INSIN4, TAUT, TAUHFT, TAUHFT2, & 213 DELU, DELTAUW, DELUST, & 214 DELALP, DELTAIL, & 215 DIKCUMUL 216 USE W3SNL1MD, ONLY: INSNL1 217 USE W3SERVMD, ONLY: EXTCDE 218 USE W3DISPMD 219 ! 220 IMPLICIT NONE 221 ! 222 !/ 223 !/ ------------------------------------------------------------------- / 224 !/ Parameter list 225 !/ 226 INTEGER, INTENT(IN) :: NDSM 227 INTEGER, INTENT(IN), OPTIONAL :: IMOD 228 CHARACTER, INTENT(IN) :: INXOUT*(*) Page 5 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 229 CHARACTER, INTENT(IN), OPTIONAL :: FEXT*(*) 230 !/ 231 !/ ------------------------------------------------------------------- / 232 !/ Local parameters 233 !/ 234 INTEGER :: IGRD, IERR, I, J, MTH, MK, ISEA, IX, IY 235 INTEGER :: IK, ITH, IK2, ITH2 236 INTEGER, ALLOCATABLE :: MAPTMP(:,:) 237 LOGICAL :: WRITE, FLTEST = .FALSE., TESTLL, & 238 FLSNL2 = .FALSE. 239 LOGICAL, SAVE :: FLINP = .FALSE. , FLDISP = .FALSE. 240 CHARACTER(LEN=10) :: VERTST, TEMPXT 241 CHARACTER(LEN=30) :: TNAME0, TNAME1, TNAME2, TNAME3, & 242 TNAME4, TNAME5, TNAME6, TNAME7, & 243 TNAMEP, TNAMEG, TNAMEF, TNAMEI 244 CHARACTER(LEN=30) :: FNAME0, FNAME1, FNAME2, FNAME3, & 245 FNAME4, FNAME5, FNAME6, FNAME7, & 246 FNAMEP, FNAMEG, FNAMEF, FNAMEI 247 CHARACTER(LEN=35) :: IDTST 248 LOGICAL :: GLOBAL 249 !/ 250 !/ ------------------------------------------------------------------- / 251 !/ 252 ! 253 TNAMEF = '------------------------------' 254 TNAME0 = '------------------------------' 255 TNAME1 = '------------------------------' 256 TNAME2 = '------------------------------' 257 TNAME3 = '------------------------------' 258 TNAME4 = '------------------------------' 259 TNAME5 = '------------------------------' 260 TNAME6 = '------------------------------' 261 TNAME7 = '------------------------------' 262 TNAMEP = '------------------------------' 263 TNAMEG = '------------------------------' 264 TNAMEI = '------------------------------' 265 ! 266 TNAME0 = 'Cavaleri and M.-R. (1982) ' 267 TNAME1 = 'Ardhuin et al. (2009+) ' 268 TNAME2 = 'Discrete Interaction Approx. ' 269 TNAME3 = 'JONSWAP ' 270 TNAME4 = 'Battjes and Janssen (1978) ' 271 TNAME5 = 'Not defined ' 272 TNAME6 = 'Not defined ' 273 TNAME7 = 'Not defined ' 274 TNAMEP = '3rd order UQ scheme ' 275 TNAMEG = 'Averaging operator ' 276 ! 277 FNAMEF = TNAMEF 278 FNAME0 = TNAME0 279 FNAME1 = TNAME1 280 FNAME2 = TNAME2 281 FNAME3 = TNAME3 282 FNAME4 = TNAME4 283 FNAME5 = TNAME5 284 FNAME6 = TNAME6 285 FNAME7 = TNAME7 Page 6 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 286 FNAMEP = TNAMEP 287 FNAMEG = TNAMEG 288 FNAMEI = TNAMEI 289 ! 290 ! test input parameters ---------------------------------------------- * 291 ! 292 IF ( PRESENT(IMOD) ) THEN 293 IGRD = IMOD 294 ELSE 295 IGRD = 1 296 END IF 297 ! 298 IF ( PRESENT(FEXT) ) THEN 299 TEMPXT = FEXT 300 ELSE 301 TEMPXT = 'ww3' 302 END IF 303 ! 304 IF (INXOUT.NE.'READ' .AND. INXOUT.NE.'WRITE' & 305 .AND. INXOUT.NE.'GRID') THEN 306 IF ( IAPROC .EQ. NAPERR ) WRITE (NDSE,900) INXOUT 307 CALL EXTCDE ( 1 ) 308 END IF 309 ! 310 WRITE = INXOUT .EQ. 'WRITE' 311 ! 312 CALL W3SETO ( IGRD, NDSE, NDST ) 313 CALL W3SETG ( IGRD, NDSE, NDST ) 314 FILEXT = TEMPXT 315 ! 316 ! open file ---------------------------------------------------------- * 317 ! 318 I = LEN_TRIM(FILEXT) 319 J = LEN_TRIM(FNMPRE) 320 ! 321 IF ( WRITE ) THEN 322 OPEN (NDSM,FILE=FNMPRE(:J)//'mod_def.'//FILEXT(:I), & 323 FORM='UNFORMATTED',ERR=800,IOSTAT=IERR) 324 ELSE 325 OPEN (NDSM,FILE=FNMPRE(:J)//'mod_def.'//FILEXT(:I), & 326 FORM='UNFORMATTED',STATUS='OLD',ERR=800,IOSTAT=IERR) 327 ENDIF 328 ! 329 REWIND ( NDSM ) 330 ! 331 ! Dimensions and test information -------------------------------------- 332 ! 333 IF ( WRITE ) THEN 334 WRITE (NDSM) & 335 IDSTR, VERGRD, NX, NY, NSEA, NTH, NK, & 336 NBI, NFBPO, GNAME, FNAME0, FNAME1, FNAME2, FNAME3, & 337 FNAME4, FNAME5, FNAME6, FNAME7, FNAMEP, FNAMEG, & 338 FNAMEF, FNAMEI 339 ! 340 WRITE (NDSM) & 341 (NBO(I),I=0,NFBPO), (NBO2(I),I=0,NFBPO) 342 ELSE Page 7 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 343 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 344 IDTST, VERTST, NX, NY, NSEA, MTH, MK, & 345 NBI, NFBPO, GNAME, FNAME0, FNAME1, FNAME2, FNAME3, & 346 FNAME4, FNAME5, FNAME6, FNAME7, FNAMEP, FNAMEG, & 347 FNAMEF, FNAMEI 348 ! 349 NK = MK 350 NTH = MTH 351 NK2 = NK + 2 352 NSPEC = NK * NTH 353 ! 354 IF ( IDTST .NE. IDSTR ) THEN 355 IF ( IAPROC .EQ. NAPERR ) & 356 WRITE (NDSE,901) IDTST, IDSTR 357 CALL EXTCDE ( 10 ) 358 END IF 359 IF ( VERTST .NE. VERGRD ) THEN 360 IF ( IAPROC .EQ. NAPERR ) & 361 WRITE (NDSE,902) VERTST, VERGRD 362 CALL EXTCDE ( 11 ) 363 END IF 364 IF ( NFBPO .GT. 9 ) THEN 365 IF ( IAPROC .EQ. NAPERR ) & 366 WRITE (NDSE,904) NFBPO, 9 367 CALL EXTCDE ( 13 ) 368 END IF 369 IF ( FNAME0 .NE. TNAME0 ) THEN 370 IF ( IAPROC .EQ. NAPERR ) & 371 WRITE (NDSE,905) 0, FNAME0, TNAME0 372 CALL EXTCDE ( 14 ) 373 END IF 374 IF ( FNAME1 .NE. TNAME1 ) THEN 375 IF ( IAPROC .EQ. NAPERR ) & 376 WRITE (NDSE,905) 1, FNAME1, TNAME1 377 CALL EXTCDE ( 15 ) 378 END IF 379 IF ( FNAME2 .NE. TNAME2 ) THEN 380 IF ( IAPROC .EQ. NAPERR ) & 381 WRITE (NDSE,905) 2, FNAME2, TNAME2 382 CALL EXTCDE ( 16 ) 383 END IF 384 IF ( FNAME3 .NE. TNAME3 ) THEN 385 IF ( IAPROC .EQ. NAPERR ) & 386 WRITE (NDSE,905) 3, FNAME3, TNAME3 387 CALL EXTCDE ( 17 ) 388 END IF 389 IF ( FNAMEI .NE. TNAMEI ) THEN 390 IF ( IAPROC .EQ. NAPERR ) & 391 WRITE (NDSE,905) 3, FNAMEI, TNAMEI 392 CALL EXTCDE ( 17 ) 393 END IF 394 IF ( FNAME4 .NE. TNAME4 ) THEN 395 IF ( IAPROC .EQ. NAPERR ) & 396 WRITE (NDSE,905) 4, FNAME4, TNAME4 397 CALL EXTCDE ( 18 ) 398 END IF 399 IF ( FNAME5 .NE. TNAME5 ) THEN Page 8 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 400 IF ( IAPROC .EQ. NAPERR ) & 401 WRITE (NDSE,905) 5, FNAME5, TNAME5 402 CALL EXTCDE ( 19 ) 403 END IF 404 IF ( FNAME6 .NE. TNAME6 ) THEN 405 IF ( IAPROC .EQ. NAPERR ) & 406 WRITE (NDSE,905) 6, FNAME6, TNAME6 407 CALL EXTCDE ( 20 ) 408 END IF 409 IF ( FNAME7 .NE. TNAME7 ) THEN 410 IF ( IAPROC .EQ. NAPERR ) & 411 WRITE (NDSE,905) 7, FNAME7, TNAME7 412 CALL EXTCDE ( 21 ) 413 END IF 414 IF ( FNAMEP .NE. TNAMEP ) THEN 415 IF ( IAPROC .EQ. NAPERR ) & 416 WRITE (NDSE,906) FNAMEP, TNAMEP 417 CALL EXTCDE ( 22 ) 418 END IF 419 IF ( FNAMEG .NE. TNAMEG ) THEN 420 IF ( IAPROC .EQ. NAPERR ) & 421 WRITE (NDSE,907) FNAMEG, TNAMEG 422 CALL EXTCDE ( 22 ) 423 END IF 424 IF ( FNAMEF .NE. TNAMEF ) THEN 425 IF ( IAPROC .EQ. NAPERR ) & 426 WRITE (NDSE,908) FNAMEF, TNAMEF 427 CALL EXTCDE ( 24 ) 428 END IF 429 ! 430 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 431 (NBO(I),I=0,NFBPO), (NBO2(I),I=0,NFBPO) 432 ! 433 ENDIF 434 ! 435 ! Parameters in modules --------------------------------------------- * 436 ! Module W3GDAT GRID 437 ! 438 ALLOCATE ( MAPTMP(NY,NX) ) 439 ! 440 IF ( WRITE ) THEN 441 MAPTMP = MAPSTA + 8*MAPST2 442 WRITE (NDSM) & 443 GTYPE, FLAGLL, ICLOSE 444 ! 445 ! Writes different kind of information depending on grid type 446 ! 447 SELECT CASE ( GTYPE ) 448 CASE ( RLGTYPE ) 449 WRITE (NDSM) & 450 SX, SY, X0, Y0 451 CASE ( CLGTYPE ) 452 WRITE (NDSM) & 453 XGRD, YGRD 454 CASE (UNGTYPE) 455 WRITE (NDSM) & 456 FSN, FSPSI,FSFCT,FSNIMP,NTRI,COUNTOT, COUNTRI, NNZ Page 9 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 457 WRITE (NDSM) & 458 X0, Y0, SX, SY, DXYMAX, XYB, TRIGP, TRIA, & 459 CROSSDIFF, LEN, IEN, ANGLE0, ANGLE, SI, MAXX, MAXY, & 460 DXYMAX, INDEX_CELL, CCON, VNEIGH, COUNTCON, IE_CELL, & 461 POS_CELL, IOBP, IOBPD, IAA, JAA, POSI 462 END SELECT !GTYPE 463 ! 464 WRITE (NDSM) & 465 ZB, MAPTMP, MAPFS, MAPSF, TRFLAG 466 ! 467 IF ( TRFLAG .NE. 0 ) WRITE (NDSM) TRNX, TRNY 468 WRITE (NDSM) & 469 DTCFL, DTCFLI, DTMAX, DTMIN, DMIN, CTMAX, & 470 FICE0, FICEN, FICEL, PFMOVE, FLDRY, FLCX, FLCY, FLCTH, & 471 FLCK, FLSOU, FLBPI, FLBPO, CLATS, CLATIS,CTHG0S 472 WRITE(NDSM)GRIDSHIFT 473 !! WRITE(NDSM) & 474 !! COUG_2D, COUG_RAD3D, COUG_US3D 475 ELSE 476 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 477 GTYPE, FLAGLL, ICLOSE 478 !!Li IF (.NOT.GINIT) CALL W3DIMX ( IGRD, NX, NY, NSEA, NDSE, NDST ) 479 IF (.NOT.GINIT) CALL W3DIMX ( IGRD, NX, NY, NSEA, NDSE, NDST & 480 ) 481 ! 482 ! Reads different kind of information depending on grid type 483 ! 484 SELECT CASE ( GTYPE ) 485 CASE ( RLGTYPE ) 486 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 487 SX, SY, X0, Y0 488 DO IX=1,NX 489 XGRD(:,IX) = X0 + REAL(IX-1)*SX 490 END DO 491 DO IY=1,NY 492 YGRD(IY,:) = Y0 + REAL(IY-1)*SY 493 END DO 494 CASE ( CLGTYPE ) 495 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 496 XGRD, YGRD 497 !Set SX, SY, X0, Y0 to large values if curvilinear grid 498 X0 = HUGE(X0); Y0 = HUGE(Y0) 499 SX = HUGE(SX); SY = HUGE(SY) 500 CASE (UNGTYPE) 501 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 502 FSN,FSPSI,FSFCT,FSNIMP,NTRI,COUNTOT, COUNTRI, NNZ 503 IF (.NOT. GUGINIT) THEN 504 CALL W3DIMUG ( IGRD, NTRI, NX, COUNTOT, NNZ, NDSE, NDST ) 505 END IF 506 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 507 X0, Y0, SX, SY, DXYMAX, XYB, TRIGP, TRIA, & 508 CROSSDIFF, LEN, IEN, ANGLE0, ANGLE, SI, MAXX, MAXY, & 509 DXYMAX, INDEX_CELL, CCON, VNEIGH, COUNTCON, IE_CELL, & 510 POS_CELL, IOBP, IOBPD, IAA, JAA, POSI 511 XGRD(1,:)=XYB(:,1) 512 YGRD(1,:)=XYB(:,2) 513 END SELECT !GTYPE Page 10 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 514 ! 515 IF (GTYPE.NE.UNGTYPE) CALL W3GNTX ( IGRD, NDSE, NDST ) 516 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 517 ZB, MAPTMP, MAPFS, MAPSF, TRFLAG 518 ! 519 MAPSTA = MOD(MAPTMP+2,8) - 2 520 MAPST2 = (MAPTMP-MAPSTA) / 8 521 MAPSF(:,3) = MAPSF(:,2) + (MAPSF(:,1)-1)*NY 522 IF ( TRFLAG .NE. 0 ) THEN 523 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) TRNX, TRNY 524 END IF 525 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 526 DTCFL, DTCFLI, DTMAX, DTMIN, DMIN, CTMAX, & 527 FICE0, FICEN, FICEL, PFMOVE, FLDRY, FLCX, FLCY, & 528 FLCTH, FLCK, FLSOU, FLBPI, FLBPO, CLATS, CLATIS,CTHG0S 529 530 READ(NDSM,END=801,ERR=802,IOSTAT=IERR)GRIDSHIFT 531 ! 532 END IF 533 ! 534 DEALLOCATE ( MAPTMP ) 535 ! 536 ! Spectral parameters ------------------------------------------------ * 537 ! Module W3GDATMD SGRD 538 ! 539 IF ( WRITE ) THEN 540 WRITE (NDSM) & 541 MAPWN, MAPTH, DTH, TH, ESIN, ECOS, ES2, ESC, EC2, & 542 XFR, FR1, SIG, SIG2, DSIP, DSII, DDEN, DDEN2, FTE, & 543 FTF, FTWN, FTTR, FTWL, FACTI1, FACTI2, FACHFA, FACHFE 544 ELSE 545 IF (.NOT.SINIT) CALL W3DIMS ( IGRD, NK, NTH, NDSE, NDST ) 546 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 547 MAPWN, MAPTH, DTH, TH, ESIN, ECOS, ES2, ESC, EC2, & 548 XFR, FR1, SIG, SIG2, DSIP, DSII, DDEN, DDEN2, FTE, & 549 FTF, FTWN, FTTR, FTWL, FACTI1, FACTI2, FACHFA, FACHFE 550 END IF 551 ! 552 IF ( INXOUT .EQ. 'GRID' ) THEN 553 CLOSE (NDSM) 554 RETURN 555 END IF 556 ! 557 ! Parameters for output boundary points ------------------------------ * 558 ! Module W3ODATMD OUT5 559 ! 560 IF ( WRITE ) THEN 561 WRITE (NDSM) & 562 XBPO, YBPO, RDBPO, IPBPO, ISBPO 563 ELSE 564 CALL W3DMO5 ( IGRD, NDSE, NDST, 2 ) 565 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 566 XBPO, YBPO, RDBPO, IPBPO, ISBPO 567 END IF 568 ! 569 ! Parameters for spectral partitioning ------------------------------ * 570 ! Module W3ODATMD OUT6 Page 11 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 571 ! 572 IF ( WRITE ) THEN 573 WRITE (NDSM) & 574 IHMAX, HSPMIN, WSMULT, WSCUT, FLCOMB, NOSWLL 575 ELSE 576 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 577 IHMAX, HSPMIN, WSMULT, WSCUT, FLCOMB, NOSWLL 578 END IF 579 ! 580 ! Numerical parameters ----------------------------------------------- * 581 ! Module W3GDATMD NPAR 582 ! 583 IF ( WRITE ) THEN 584 WRITE (NDSM) & 585 FACP, XREL, XFLT, FXFM, FXPM, XFT, XFC, FACSD, FHMAX, & 586 FLICES, FFACBERG, & 587 E3DF, P2MSF, US3DF, DELAB, FWTABLE 588 ELSE 589 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 590 FACP, XREL, XFLT, FXFM, FXPM, XFT, XFC, FACSD, FHMAX, & 591 FLICES, FFACBERG, & 592 E3DF, P2MSF, US3DF, DELAB, FWTABLE 593 END IF 594 ! 595 ! Source term parameters --------------------------------------------- * 596 ! Module W3GDATMD SFLP 597 ! Module W3GDATMD SLNP 598 ! Module W3GDATMD SRCP 599 ! Module W3GDATMD SNLP 600 ! Module W3GDATMD SBTP 601 ! 602 IF ( WRITE ) THEN 603 WRITE (NDSM) SLNC1, FSPM, FSHF 604 ELSE 605 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) SLNC1, FSPM, FSHF 606 END IF 607 ! 608 IF ( FLTEST ) WRITE (NDST,9049) SLNC1, FSPM, FSHF 609 ! 610 IF ( WRITE ) THEN 611 CALL INSIN4(.TRUE.) 612 WRITE (NDSM) & 613 ZZWND, AALPHA, ZZ0MAX, BBETA, SSINTHP, ZZALP, & 614 TTAUWSHELTER, SSWELLFPAR, SSWELLF, & 615 ZZ0RAT, SSDSC(1:7), & 616 SSDSISO, SSDSBR, SSDSBR2, SSDSBM, SSDSP, & 617 SSDSCOS, SSDSDTH, WWNMEANP, WWNMEANPTAIL, SSTXFTF, & 618 SSTXFTFTAIL, SSTXFTWN, SSTXFTF, SSTXFTWN, & 619 SSDSBRF1, SSDSBRF2, SSDSBRFDF,SSDSBCK, SSDSABK, & 620 SSDSPBK, SSDSBINT, & 621 FFXPM, FFXFM, SSDSHCK, DELUST, DELTAIL, DELTAUW, & 622 DELU, DELALP, TAUT, TAUHFT, TAUHFT2, & 623 IKTAB, DCKI, QBI, SATINDICES, SATWEIGHTS, & 624 DIKCUMUL, CUMULW 625 ELSE 626 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 627 ZZWND, AALPHA, ZZ0MAX, BBETA, SSINTHP, ZZALP, & Page 12 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 628 TTAUWSHELTER, SSWELLFPAR, SSWELLF, & 629 ZZ0RAT, SSDSC(1:7), & 630 SSDSISO, SSDSBR, SSDSBR2, SSDSBM, SSDSP, & 631 SSDSCOS, SSDSDTH, WWNMEANP, WWNMEANPTAIL, SSTXFTF, & 632 SSTXFTFTAIL, SSTXFTWN, SSTXFTF, SSTXFTWN, & 633 SSDSBRF1, SSDSBRF2, SSDSBRFDF,SSDSBCK, SSDSABK, & 634 SSDSPBK, SSDSBINT, & 635 FFXPM, FFXFM, SSDSHCK, DELUST, DELTAIL, DELTAUW, & 636 DELU, DELALP, TAUT, TAUHFT, TAUHFT2, & 637 IKTAB, DCKI, QBI, SATINDICES, SATWEIGHTS, & 638 DIKCUMUL, CUMULW 639 END IF 640 ! 641 ! ... Nonlinear interactions 642 ! 643 IF ( WRITE ) THEN 644 WRITE (NDSM) & 645 SNLC1, LAM, KDCON, KDMN, SNLS1, SNLS2, SNLS3 646 ELSE 647 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 648 SNLC1, LAM, KDCON, KDMN, SNLS1, SNLS2, SNLS3 649 END IF 650 ! 651 IF ( FLTEST ) WRITE (NDST,9051) SNLC1, LAM, & 652 KDCON, KDMN, SNLS1, SNLS2, SNLS3 653 ! 654 IF ( .NOT. WRITE ) CALL INSNL1 ( IGRD ) 655 ! 656 ! Layered barriers needed for file management in xnl_init 657 ! 658 ! ... Bottom friction ... 659 ! 660 IF ( WRITE ) THEN 661 WRITE (NDSM) SBTC1 662 ELSE 663 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) SBTC1 664 END IF 665 ! 666 IF ( FLTEST ) WRITE (NDST,9052) SBTC1 667 ! 668 ! ... Depth induced breaking ... 669 ! 670 IF ( WRITE ) THEN 671 WRITE (NDSM) & 672 SDBC1, SDBC2, FDONLY 673 ELSE 674 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 675 SDBC1, SDBC2, FDONLY 676 END IF 677 ! 678 IF ( FLTEST ) WRITE (NDST,9053) SDBC1, SDBC2, FDONLY 679 ! 680 ! Propagation scheme ------------------------------------------------- * 681 ! Module W3GDATMD PROP 682 ! 683 IF ( WRITE ) THEN 684 WRITE (NDSM) WDCG, WDTH Page 13 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 685 ELSE 686 READ (NDSM,END=801,ERR=802,IOSTAT=IERR) & 687 WDCG, WDTH 688 END IF 689 ! 690 IF ( FLTEST ) WRITE (NDST,9060) WDCG, WDTH 691 ! 692 ! Interpolation tables ( fill locally ) ----------------------------- * 693 ! Module W3DISPMD 694 ! 695 IF ( .NOT.WRITE .AND. .NOT.FLDISP ) THEN 696 CALL DISTAB 697 FLDISP = .TRUE. 698 END IF 699 ! 700 CLOSE ( NDSM ) 701 ! 702 RETURN 703 ! 704 ! Escape locations read errors --------------------------------------- * 705 ! 706 800 CONTINUE 707 IF ( IAPROC .EQ. NAPERR ) WRITE (NDSE,1000) IERR 708 CALL EXTCDE ( 50 ) 709 ! 710 801 CONTINUE 711 IF ( IAPROC .EQ. NAPERR ) WRITE (NDSE,1001) 712 CALL EXTCDE ( 51 ) 713 ! 714 802 CONTINUE 715 IF ( IAPROC .EQ. NAPERR ) WRITE (NDSE,1002) IERR 716 CALL EXTCDE ( 52 ) 717 ! 718 ! Formats 719 ! 720 900 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR :'/ & 721 ' ILEGAL INXOUT VALUE: ',A/) 722 901 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR :'/ & 723 ' ILEGAL IDSTR, READ : ',A/ & 724 ' CHECK : ',A/) 725 902 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR :'/ & 726 ' ILEGAL VERGRD, READ : ',A/ & 727 ' CHECK : ',A/) 728 904 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR :'/ & 729 ' ILEGAL NFBPO READ : ',I8/ & 730 ' CHECK : ',I8/) 731 905 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR :'/ & 732 ' UNEXPECTED SOURCE TERM IDENTIFIER',I2/ & 733 ' IN FILE : ',A/ & 734 ' EXPECTED : ',A/ & 735 ' CHECK CONSISTENCY OF SWITCHES IN PROGRAMS'/) 736 906 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR :'/ & 737 ' UNEXPECTED PROPAGATION SCHEME IDENTIFIER'/ & 738 ' IN FILE :',A/ & 739 ' EXPECTED :',A/ & 740 ' CHECK CONSISTENCY OF SWITCHES IN PROGRAMS'/) 741 907 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR :'/ & Page 14 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 742 ' UNEXPECTED GSE ALEVIATION IDENTIFIER'/ & 743 ' IN FILE :',A/ & 744 ' EXPECTED :',A/ & 745 ' CHECK CONSISTENCY OF SWITCHES IN PROGRAMS'/) 746 908 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR :'/ & 747 ' UNEXPECTED FLUX PARAMETERIZATION IDENTIFIER'/ & 748 ' IN FILE :',A/ & 749 ' EXPECTED :',A/ & 750 ' CHECK CONSISTENCY OF SWITCHES IN PROGRAMS'/) 751 910 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR :'/ & 752 ' UNEXPECTED LL GRID FLAG'/ & 753 ' IN FILE :',L2/ & 754 ' EXPECTED :',L2/ & 755 ' CHECK CONSISTENCY OF SWITCHES IN PROGRAMS'/) 756 ! 757 1000 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR : '/ & 758 ' ERROR IN OPENING FILE'/ & 759 ' IOSTAT =',I5/) 760 1001 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR : '/ & 761 ' PREMATURE END OF FILE'/) 762 1002 FORMAT (/' *** WAVEWATCH III ERROR IN W3IOGR : '/ & 763 ' ERROR IN READING FROM FILE'/ & 764 ' IOSTAT =',I5/) 765 ! 766 9049 FORMAT (' TEST W3IOGR : MODULE W3GDATMD SLNP'/ & 767 ' INPUT : ',3E10.3) 768 ! 769 9051 FORMAT (' TEST W3IOGR : MODULE W3GDATMD SNLP'/ & 770 ' DATA : ',2E10.3/ & 771 ' ',5E10.3) 772 ! 773 9052 FORMAT (' TEST W3IOGR : MODULE W3GDATMD SBTP'/ & 774 ' DATA : ',E10.3) 775 ! 776 9053 FORMAT (' TEST W3IOGR : MODULE W3GDATMD SDBP'/ & 777 ' DATA : ',2E10.3,L4) 778 ! 779 9060 FORMAT (' TEST W3IOGR : MODULE W3GDATMD PROP'/ & 780 ' DATA : ',2F6.2) 781 ! 782 !/ 783 !/ End of W3IOGR ----------------------------------------------------- / 784 !/ 785 END SUBROUTINE W3IOGR Page 15 Source Listing W3IOGR 2014-09-16 16:55 Entry Points w3iogrmd.f90 ENTRY POINTS Name w3iogrmd_mp_w3iogr_ SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References 1000 Label 757 707 1001 Label 760 711 1002 Label 762 715 800 Label 706 323,326 801 Label 710 343,430,476,486,495,501,506,516,52 3,525,530,546,565,576,589,605,626, 647,663,674,686 802 Label 714 343,430,476,486,495,501,506,516,52 3,525,530,546,565,576,589,605,626, 647,663,674,686 900 Label 720 306 901 Label 722 356 902 Label 725 361 904 Label 728 366 9049 Label 766 608 905 Label 731 371,376,381,386,391,396,401,406,41 1 9051 Label 769 651 9052 Label 773 666 9053 Label 776 678 906 Label 736 416 9060 Label 779 690 907 Label 741 421 908 Label 746 426 910 Label 751 AALPHA Local 613 R(4) 4 scalar PTR 613,627 ANGLE Local 459 R(4) 4 2 1 PTR 459,508 ANGLE0 Local 459 R(4) 4 2 1 PTR 459,508 BBETA Local 613 R(4) 4 scalar PTR 613,627 CCON Local 460 I(4) 4 1 1 PTR 460,509 CLATIS Local 471 R(4) 4 1 1 PTR 471,528 CLATS Local 471 R(4) 4 1 1 PTR 471,528 CLGTYPE Param 451 I(4) 4 scalar 451,494 CONSTANTS Module 209 209 COUNTCON Local 460 I(4) 4 1 1 PTR 460,509 COUNTOT Local 456 I(4) 4 scalar PTR 456,502,504 COUNTRI Local 456 I(4) 4 scalar PTR 456,502 CROSSDIFF Local 459 R(4) 4 2 1 PTR 459,508 CTHG0S Local 471 R(4) 4 1 1 PTR 471,528 CTMAX Local 469 R(4) 4 scalar PTR 469,526 CUMULW Local 624 R(4) 4 2 1 PTR 624,638 DCKI Local 623 R(4) 4 2 1 PTR 623,637 DDEN Local 542 R(4) 4 1 1 PTR 542,548 DDEN2 Local 542 R(4) 4 1 1 PTR 542,548 Page 16 Source Listing W3IOGR 2014-09-16 16:55 Symbol Table w3iogrmd.f90 Name Object Declared Type Bytes Dimen Elements Attributes References DELAB Local 587 R(4) 4 scalar 587,592 DELALP Local 214 R(4) 4 scalar 214,622,636 DELTAIL Local 214 R(4) 4 scalar 214,621,635 DELTAUW Local 213 R(4) 4 scalar 213,621,635 DELU Local 213 R(4) 4 scalar 213,622,636 DELUST Local 213 R(4) 4 scalar 213,621,635 DIKCUMUL Local 215 I(4) 4 scalar 215,624,638 DISTAB Subr 696 696 DMIN Local 469 R(4) 4 scalar PTR 469,526 DSII Local 542 R(4) 4 1 1 PTR 542,548 DSIP Local 542 R(4) 4 1 1 PTR 542,548 DTCFL Local 469 R(4) 4 scalar PTR 469,526 DTCFLI Local 469 R(4) 4 scalar PTR 469,526 DTH Local 541 R(4) 4 scalar PTR 541,547 DTMAX Local 469 R(4) 4 scalar PTR 469,526 DTMIN Local 469 R(4) 4 scalar PTR 469,526 DXYMAX Local 458 R(4) 4 scalar PTR 458,460,507,509 E3DF Local 587 I(4) 4 2 1 PTR 587,592 EC2 Local 541 R(4) 4 1 1 PTR 541,547 ECOS Local 541 R(4) 4 1 1 PTR 541,547 ES2 Local 541 R(4) 4 1 1 PTR 541,547 ESC Local 541 R(4) 4 1 1 PTR 541,547 ESIN Local 541 R(4) 4 1 1 PTR 541,547 EXTCDE Subr 217 217,307,357,362,367,372,377,382,38 7,392,397,402,407,412,417,422,427, 708,712,716 FACHFA Local 543 R(4) 4 scalar PTR 543,549 FACHFE Local 543 R(4) 4 scalar PTR 543,549 FACP Local 585 R(4) 4 scalar PTR 585,590 FACSD Local 585 R(4) 4 scalar PTR 585,590 FACTI1 Local 543 R(4) 4 scalar PTR 543,549 FACTI2 Local 543 R(4) 4 scalar PTR 543,549 FDONLY Local 672 L(4) 4 scalar PTR 672,675,678 FEXT Dummy 82 CHAR scalar ARG,IN 298,299 FFACBERG Local 586 R(4) 4 scalar PTR 586,591 FFXFM Local 621 R(4) 4 scalar PTR 621,635 FFXPM Local 621 R(4) 4 scalar PTR 621,635 FHMAX Local 585 R(4) 4 scalar PTR 585,590 FICE0 Local 470 R(4) 4 scalar PTR 470,527 FICEL Local 470 R(4) 4 scalar PTR 470,527 FICEN Local 470 R(4) 4 scalar PTR 470,527 FILEXT Local 314 CHAR 10 scalar PTR 314,318,322,325 FLAGLL Local 443 L(4) 4 scalar 443,477 FLBPI Local 471 L(4) 4 scalar PTR 471,528 FLBPO Local 471 L(4) 4 scalar PTR 471,528 FLCK Local 471 L(4) 4 scalar PTR 471,528 FLCOMB Local 574 L(4) 4 scalar PTR 574,577 FLCTH Local 470 L(4) 4 scalar PTR 470,528 FLCX Local 470 L(4) 4 scalar PTR 470,527 FLCY Local 470 L(4) 4 scalar PTR 470,527 FLDISP Local 239 L(4) 4 scalar 239,695,697 FLDRY Local 470 L(4) 4 scalar PTR 470,527 FLICES Local 586 L(4) 4 scalar PTR 586,591 FLINP Local 239 L(4) 4 scalar 239 FLSNL2 Local 238 L(4) 4 scalar 238 Page 17 Source Listing W3IOGR 2014-09-16 16:55 Symbol Table w3iogrmd.f90 Name Object Declared Type Bytes Dimen Elements Attributes References FLSOU Local 471 L(4) 4 scalar PTR 471,528 FLTEST Local 237 L(4) 4 scalar 237,608,651,666,678,690 FNAME0 Local 244 CHAR 30 scalar 278,336,345,369,371 FNAME1 Local 244 CHAR 30 scalar 279,336,345,374,376 FNAME2 Local 244 CHAR 30 scalar 280,336,345,379,381 FNAME3 Local 244 CHAR 30 scalar 281,336,345,384,386 FNAME4 Local 245 CHAR 30 scalar 282,337,346,394,396 FNAME5 Local 245 CHAR 30 scalar 283,337,346,399,401 FNAME6 Local 245 CHAR 30 scalar 284,337,346,404,406 FNAME7 Local 245 CHAR 30 scalar 285,337,346,409,411 FNAMEF Local 246 CHAR 30 scalar 277,338,347,424,426 FNAMEG Local 246 CHAR 30 scalar 287,337,346,419,421 FNAMEI Local 246 CHAR 30 scalar 288,338,347,389,391 FNAMEP Local 246 CHAR 30 scalar 286,337,346,414,416 FNMPRE Local 319 CHAR 80 scalar 319,322,325 FR1 Local 542 R(4) 4 scalar PTR 542,548 FSFCT Local 456 L(4) 4 scalar PTR 456,502 FSHF Local 603 R(4) 4 scalar PTR 603,605,608 FSN Local 456 L(4) 4 scalar PTR 456,502 FSNIMP Local 456 L(4) 4 scalar PTR 456,502 FSPM Local 603 R(4) 4 scalar PTR 603,605,608 FSPSI Local 456 L(4) 4 scalar PTR 456,502 FTE Local 542 R(4) 4 scalar PTR 542,548 FTF Local 543 R(4) 4 scalar PTR 543,549 FTTR Local 543 R(4) 4 scalar PTR 543,549 FTWL Local 543 R(4) 4 scalar PTR 543,549 FTWN Local 543 R(4) 4 scalar PTR 543,549 FWTABLE Local 587 R(4) 4 1 301 587,592 FXFM Local 585 R(4) 4 scalar PTR 585,590 FXPM Local 585 R(4) 4 scalar PTR 585,590 GINIT Local 479 L(4) 4 scalar PTR 479 GLOBAL Local 248 L(4) 4 scalar GNAME Local 336 CHAR 30 scalar PTR 336,345 GRIDSHIFT Local 472 R(8) 8 scalar PTR 472,530 GTYPE Local 443 I(4) 4 scalar PTR 443,447,477,484,515 GUGINIT Local 503 L(4) 4 scalar PTR 503 HSPMIN Local 574 R(4) 4 scalar PTR 574,577 HUGE Func 498 scalar 498,499 I Local 234 I(4) 4 scalar 318,322,325,341,431 IAA Local 461 I(4) 4 1 1 PTR 461,510 IAPROC Local 306 I(4) 4 scalar PTR 306,355,360,365,370,375,380,385,39 0,395,400,405,410,415,420,425,707, 711,715 ICLOSE Local 443 I(4) 4 scalar PTR 443,477 IDSTR Param 335 CHAR 35 scalar PRIV 75,335,354,356 IDTST Local 247 CHAR 35 scalar 344,354,356 IEN Local 459 R(4) 4 2 1 PTR 459,508 IERR Local 234 I(4) 4 scalar 323,326,343,430,476,486,495,501,50 6,516,523,525,530,546,565,576,589, 605,626,647,663,674,686,707,715 IE_CELL Local 460 I(4) 4 1 1 PTR 460,509 IGRD Local 234 I(4) 4 scalar 293,295,312,313,479,504,515,545,56 4,654 IHMAX Local 574 I(4) 4 scalar PTR 574,577 IK Local 235 I(4) 4 scalar Page 18 Source Listing W3IOGR 2014-09-16 16:55 Symbol Table w3iogrmd.f90 Name Object Declared Type Bytes Dimen Elements Attributes References IK2 Local 235 I(4) 4 scalar IKTAB Local 623 I(4) 4 2 1 PTR 623,637 IMOD Dummy 82 I(4) 4 scalar ARG,IN 292,293 INDEX_CELL Local 460 I(4) 4 1 1 PTR 460,509 INSIN4 Subr 212 212,611 INSNL1 Subr 216 216,654 INXOUT Dummy 82 CHAR scalar ARG,IN 304,305,306,310,552 IOBP Local 461 I(4) 4 1 1 PTR 461,510 IOBPD Local 461 I(4) 4 2 1 PTR 461,510 IPBPO Local 562 I(4) 4 2 1 PTR 562,566 ISBPO Local 562 I(4) 4 1 1 PTR 562,566 ISEA Local 234 I(4) 4 scalar ITH Local 235 I(4) 4 scalar ITH2 Local 235 I(4) 4 scalar IX Local 234 I(4) 4 scalar 488,489 IY Local 234 I(4) 4 scalar 491,492 J Local 234 I(4) 4 scalar 319,322,325 JAA Local 461 I(4) 4 1 1 PTR 461,510 KDCON Local 645 R(4) 4 scalar PTR 645,648,652 KDMN Local 645 R(4) 4 scalar PTR 645,648,652 LAM Local 645 R(4) 4 scalar PTR 645,648,651 LEN Local 459 R(4) 4 2 1 PTR 459,508 LEN_TRIM Func 318 scalar 318,319 MAPFS Local 465 I(4) 4 2 1 PTR 465,517 MAPSF Local 465 I(4) 4 2 1 PTR 465,517,521 MAPST2 Local 441 I(4) 4 2 1 PTR 441,520 MAPSTA Local 441 I(4) 4 2 1 PTR 441,519,520 MAPTH Local 541 I(4) 4 1 1 PTR 541,547 MAPTMP Local 236 I(4) 4 2 1 ALC 438,441,465,517,519,520,534 MAPWN Local 541 I(4) 4 1 1 PTR 541,547 MAXX Local 459 R(4) 4 scalar PTR 459,508 MAXY Local 459 R(4) 4 scalar PTR 459,508 MK Local 234 I(4) 4 scalar 344,349 MOD Func 519 scalar 519 MTH Local 234 I(4) 4 scalar 344,350 NAPERR Local 306 I(4) 4 scalar PTR 306,355,360,365,370,375,380,385,39 0,395,400,405,410,415,420,425,707, 711,715 NBI Local 336 I(4) 4 scalar PTR 336,345 NBO Local 341 I(4) 4 1 1 PTR 341,431 NBO2 Local 341 I(4) 4 1 1 PTR 341,431 NDSE Local 306 I(4) 4 scalar PTR 306,312,313,356,361,366,371,376,38 1,386,391,396,401,406,411,416,421, 426,479,504,515,545,564,707,711,71 5 NDSM Dummy 82 I(4) 4 scalar ARG,IN 322,325,329,334,340,343,430,442,44 9,452,455,457,464,467,468,472,476, 486,495,501,506,516,523,525,530,54 0,546,553,561,565,573,576,584,589, 603,605,612,626,644,647,661,663,67 1,674,684,686,700 NDST Local 312 I(4) 4 scalar PTR 312,313,479,504,515,545,564,608,65 1,666,678,690 NFBPO Local 336 I(4) 4 scalar PTR 336,341,345,364,366,431 NK Local 335 I(4) 4 scalar PTR 335,349,351,352,545 Page 19 Source Listing W3IOGR 2014-09-16 16:55 Symbol Table w3iogrmd.f90 Name Object Declared Type Bytes Dimen Elements Attributes References NK2 Local 351 I(4) 4 scalar PTR 351 NNZ Local 456 I(4) 4 scalar PTR 456,502,504 NOSWLL Local 574 I(4) 4 scalar PTR 574,577 NSEA Local 335 I(4) 4 scalar PTR 335,344,479 NSPEC Local 352 I(4) 4 scalar PTR 352 NTH Local 335 I(4) 4 scalar PTR 335,350,352,545 NTRI Local 456 I(4) 4 scalar PTR 456,502,504 NX Local 335 I(4) 4 scalar PTR 335,344,438,479,488,504 NY Local 335 I(4) 4 scalar PTR 335,344,438,479,491,521 P2MSF Local 587 I(4) 4 1 1 PTR 587,592 PFMOVE Local 470 R(4) 4 scalar PTR 470,527 POSI Local 461 I(4) 4 2 1 PTR 461,510 POS_CELL Local 461 I(4) 4 1 1 PTR 461,510 PRESENT Func 292 scalar 292,298 QBI Local 623 R(4) 4 2 1 PTR 623,637 RDBPO Local 562 R(4) 4 2 1 PTR 562,566 REAL Func 489 scalar 489,492 RLGTYPE Param 448 I(4) 4 scalar 448,485 SATINDICES Local 623 I(4) 4 2 1 PTR 623,637 SATWEIGHTS Local 623 R(4) 4 2 1 PTR 623,637 SBTC1 Local 661 R(4) 4 scalar PTR 661,663,666 SDBC1 Local 672 R(4) 4 scalar PTR 672,675,678 SDBC2 Local 672 R(4) 4 scalar PTR 672,675,678 SI Local 459 R(4) 4 1 1 PTR 459,508 SIG Local 542 R(4) 4 1 1 PTR 542,548 SIG2 Local 542 R(4) 4 1 1 PTR 542,548 SINIT Local 545 L(4) 4 scalar PTR 545 SLNC1 Local 603 R(4) 4 scalar PTR 603,605,608 SNLC1 Local 645 R(4) 4 scalar PTR 645,648,651 SNLS1 Local 645 R(4) 4 scalar PTR 645,648,652 SNLS2 Local 645 R(4) 4 scalar PTR 645,648,652 SNLS3 Local 645 R(4) 4 scalar PTR 645,648,652 SSDSABK Local 619 R(4) 4 scalar PTR 619,633 SSDSBCK Local 619 R(4) 4 scalar PTR 619,633 SSDSBINT Local 620 R(4) 4 scalar PTR 620,634 SSDSBM Local 616 R(4) 4 1 1 PTR 616,630 SSDSBR Local 616 R(4) 4 scalar PTR 616,630 SSDSBR2 Local 616 R(4) 4 scalar PTR 616,630 SSDSBRF1 Local 619 R(4) 4 scalar PTR 619,633 SSDSBRF2 Local 619 R(4) 4 scalar PTR 619,633 SSDSBRFDF Local 619 I(4) 4 scalar PTR 619,633 SSDSC Local 615 R(4) 4 1 1 PTR 615,629 SSDSCOS Local 617 R(4) 4 scalar PTR 617,631 SSDSDTH Local 617 R(4) 4 scalar PTR 617,631 SSDSHCK Local 621 R(4) 4 scalar PTR 621,635 SSDSISO Local 616 I(4) 4 scalar PTR 616,630 SSDSP Local 616 R(4) 4 scalar PTR 616,630 SSDSPBK Local 620 R(4) 4 scalar PTR 620,634 SSINTHP Local 613 R(4) 4 scalar PTR 613,627 SSTXFTF Local 617 R(4) 4 scalar PTR 617,618,631,632 SSTXFTFTAIL Local 618 R(4) 4 scalar PTR 618,632 SSTXFTWN Local 618 R(4) 4 scalar PTR 618,632 SSWELLF Local 614 R(4) 4 1 1 PTR 614,628 SSWELLFPAR Local 614 I(4) 4 scalar PTR 614,628 SX Local 450 R(4) 4 scalar PTR 450,458,487,489,499,507 Page 20 Source Listing W3IOGR 2014-09-16 16:55 Symbol Table w3iogrmd.f90 Name Object Declared Type Bytes Dimen Elements Attributes References SY Local 450 R(4) 4 scalar PTR 450,458,487,492,499,507 TAUHFT Local 212 R(4) 4 2 20301 212,622,636 TAUHFT2 Local 212 R(4) 4 3 1035351 212,622,636 TAUT Local 212 R(4) 4 2 40401 212,622,636 TEMPXT Local 240 CHAR 10 scalar 299,301,314 TESTLL Local 237 L(4) 4 scalar TH Local 541 R(4) 4 1 1 PTR 541,547 TNAME0 Local 241 CHAR 30 scalar 254,266,278,369,371 TNAME1 Local 241 CHAR 30 scalar 255,267,279,374,376 TNAME2 Local 241 CHAR 30 scalar 256,268,280,379,381 TNAME3 Local 241 CHAR 30 scalar 257,269,281,384,386 TNAME4 Local 242 CHAR 30 scalar 258,270,282,394,396 TNAME5 Local 242 CHAR 30 scalar 259,271,283,399,401 TNAME6 Local 242 CHAR 30 scalar 260,272,284,404,406 TNAME7 Local 242 CHAR 30 scalar 261,273,285,409,411 TNAMEF Local 243 CHAR 30 scalar 253,277,424,426 TNAMEG Local 243 CHAR 30 scalar 263,275,287,419,421 TNAMEI Local 243 CHAR 30 scalar 264,288,389,391 TNAMEP Local 243 CHAR 30 scalar 262,274,286,414,416 TRFLAG Local 465 I(4) 4 scalar PTR 465,467,517,522 TRIA Local 458 R(4) 4 1 1 PTR 458,507 TRIGP Local 458 I(4) 4 2 1 PTR 458,507 TRNX Local 467 R(4) 4 2 1 PTR 467,523 TRNY Local 467 R(4) 4 2 1 PTR 467,523 TTAUWSHELTER Local 614 R(4) 4 scalar PTR 614,628 UNGTYPE Param 454 I(4) 4 scalar 454,500,515 US3DF Local 587 I(4) 4 1 1 PTR 587,592 VERGRD Param 335 CHAR 10 scalar PRIV 73,335,359,361 VERTST Local 240 CHAR 10 scalar 344,359,361 VNEIGH Local 460 I(4) 4 2 1 PTR 460,509 W3DIMS Subr 545 545 W3DIMUG Subr 504 504 W3DIMX Subr 479 479 W3DISPMD Module 218 218 W3DMO5 Subr 564 564 W3GDATMD Module 210 210 W3GNTX Subr 515 515 W3IOGR Subr 82 W3ODATMD Module 211 211 W3SERVMD Module 217 217 W3SETG Subr 313 313 W3SETO Subr 312 312 W3SNL1MD Module 216 216 W3SRC4MD Module 212 212 WDCG Local 684 R(4) 4 scalar PTR 684,687,690 WDTH Local 684 R(4) 4 scalar PTR 684,687,690 WRITE Local 237 L(4) 4 scalar 310,321,333,440,539,560,572,583,60 2,610,643,654,660,670,683,695 WSCUT Local 574 R(4) 4 scalar PTR 574,577 WSMULT Local 574 R(4) 4 scalar PTR 574,577 WWNMEANP Local 617 R(4) 4 scalar PTR 617,631 WWNMEANPTAIL Local 617 R(4) 4 scalar PTR 617,631 X0 Local 450 R(4) 4 scalar PTR 450,458,487,489,498,507 XBPO Local 562 R(4) 4 1 1 PTR 562,566 XFC Local 585 R(4) 4 scalar PTR 585,590 Page 21 Source Listing W3IOGR 2014-09-16 16:55 Symbol Table w3iogrmd.f90 Name Object Declared Type Bytes Dimen Elements Attributes References XFLT Local 585 R(4) 4 scalar PTR 585,590 XFR Local 542 R(4) 4 scalar PTR 542,548 XFT Local 585 R(4) 4 scalar PTR 585,590 XGRD Local 453 R(4) 4 2 1 PTR 453,489,496,511 XREL Local 585 R(4) 4 scalar PTR 585,590 XYB Local 458 R(8) 8 2 1 PTR 458,507,511,512 Y0 Local 450 R(4) 4 scalar PTR 450,458,487,492,498,507 YBPO Local 562 R(4) 4 1 1 PTR 562,566 YGRD Local 453 R(4) 4 2 1 PTR 453,492,496,512 ZB Local 465 R(4) 4 1 1 PTR 465,517 ZZ0MAX Local 613 R(4) 4 scalar PTR 613,627 ZZ0RAT Local 615 R(4) 4 scalar PTR 615,629 ZZALP Local 613 R(4) 4 scalar PTR 613,627 ZZWND Local 613 R(4) 4 scalar PTR 613,627 Page 22 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 786 !/ 787 !/ End of module W3IOGRMD -------------------------------------------- / 788 !/ 789 END MODULE W3IOGRMD SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References W3IOGRMD Module 2 Page 23 Source Listing W3IOGR 2014-09-16 16:55 Subprograms/Common Blocks w3iogrmd.f90 SUBPROGRAMS/COMMON BLOCKS Name Object Declared Type Bytes Dimen Elements Attributes References W3IOGR Subr 82 W3IOGRMD Module 2 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 -fpscomp noioformat -fpscomp noldio_spacing -fpscomp nologicals no -fpconstant Page 24 Source Listing W3IOGR 2014-09-16 16:55 w3iogrmd.f90 -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 : w3iogrmd.lst -o filename : none COMPILER: Intel(R) Fortran 12.1-2100