581 INTEGER,
PARAMETER ::
nfl = 6
779 CHARACTER(LEN=4) ::
ic5mstr(3) = (/
' EFS',
' RP ',
' M2 '/)
965 namelist /flx4/
cdfac
1061 namelist /sbt1/
gamma
1077 namelist /pro1/
cfltm
1151 DATA yesxno /
'YES/--' ,
'---/NO' /
1169 CALL w3nout ( 6, 6 )
1170 CALL w3seto ( 1, 6, 6 )
1191 err=2000,iostat=
ierr)
1220 WRITE (ndso,902)
gname
1231 READ (
ndsi,
'(A)',
END=2001,ERR=2002,IOSTAT=IERR)
comstr
1237 READ (
ndsi,*,
END=2001,ERR=2002) gname
1238 WRITE (ndso,902) gname
1241 READ (
ndsi,*,
END=2001,ERR=2002) RXFR, RFR1, NKI, NTHI,
rth0
1249 xfr = max(
rxfr , 1.00001 )
1250 fr1 = max(
rfr1 , 1.e-6 )
1251 dth = tpi / real(nth)
1252 rth0 = max( -0.5 , min( 0.5 ,
rth0 ) )
1253 WRITE (ndso,903) nth, dth*rade
1254 WRITE (ndso,904) 360./real(nth)*
rth0
1255 WRITE (ndso,905) nk, fr1, fr1*xfr**(nk-1), xfr
1257 CALL w3dims ( 1, nk, nth, ndse, ndst )
1265 esin(
ith) = sin( th(
ith) )
1266 ecos(
ith) = cos( th(
ith) )
1267 IF ( abs(esin(
ith)) .LT. 1.e-5 )
THEN
1269 IF ( ecos(
ith) .GT. 0.5 )
THEN
1275 IF ( abs(ecos(
ith)) .LT. 1.e-5 )
THEN
1277 IF ( esin(
ith) .GT. 0.5 )
THEN
1301 sigma = fr1 * tpi / xfr**2
1302 sxfr = 0.5 * (xfr-1./xfr)
1310 dsii( 1) = 0.5 * sig( 1) * (xfr-1.)
1314 dsii(nk) = 0.5 * sig(nk) * (xfr-1.) / xfr
1317 dden(
ik) = dth * dsii(
ik) * sig(
ik)
1321 ik = 1 + (
isp-1)/nth
1323 dden2(
isp) = dden(
ik)
1340 READ (
ndsi,*,
END=2001,ERR=2002) &
1341 fldry, flcx, flcy, flcth, flck, flsou
1345 IF ( fldry )
iyn(1) = 1
1346 IF ( flcx )
iyn(2) = 1
1347 IF ( flcy )
iyn(3) = 1
1348 IF ( flcth )
iyn(4) = 1
1349 IF ( flck )
iyn(5) = 1
1350 IF ( flsou )
iyn(6) = 1
1354 IF ( .NOT. (fldry.OR.flcx.OR.flcy.OR.flck.OR.flcth.OR.flsou) )
THEN
1366 READ (
ndsi,*,
END=2001,ERR=2002) DTMAX, DTCFL, DTCFLI, dtmin
1369 IF (dtmax.LT.1.)
THEN
1370 nitersec1=ceiling(1./dtmax)
1371 WRITE (ndso,913) nitersec1
1377 dtmax = max( 1. , dtmax )
1383 dtmin = min( dtmax , max( 0. , dtmin ) )
1384 WRITE (ndso,912) dtmax, dtcfl, dtcfli, dtmin
1541 .NOT.
flref .AND. flsou )
THEN
1548 .AND. .NOT.flsou )
THEN
1552 IF (
nrlin .NE. 1 )
THEN
1553 WRITE (ndse,1022)
nrlin
1557 IF (
nrsrce .NE. 1 )
THEN
1562 IF (
nrnl .NE. 1 )
THEN
1563 WRITE (ndse,1024)
nrnl
1567 IF (
nrbt .NE. 1 )
THEN
1568 WRITE (ndse,1025)
nrbt
1572 IF (
nrdb .NE. 1 )
THEN
1573 WRITE (ndse,1026)
nrdb
1577 IF (
nrtr .NE. 1 )
THEN
1578 WRITE (ndse,1027)
nrtr
1582 IF (
nrbs .NE. 1 )
THEN
1583 WRITE (ndse,1028)
nrbs
1587 IF (
nric .GT. 1 )
THEN
1588 WRITE (ndse,1034)
nric
1592 IF (
nris .GT. 1 )
THEN
1593 WRITE (ndse,1036)
nris
1605 OPEN (
ndss,
file=trim(fnmpre)//
'ww3_grid.scratch',form=
'FORMATTED')
1608 READ (
ndsi,
'(A)',
END=2001,ERR=2002)
line
1609 IF (
line(1:16) .EQ.
'END OF NAMELISTS' )
THEN
1637 IF (
ctype .EQ. 1 )
THEN
1638 typeid =
'hyperbolic tangent'
1641 typeid =
'discontinuous '
1652 WRITE (ndso,811)
cdfac
1678 slnc1 =
clin * (dair/dwat)**2 / grav**2
1752 WRITE (ndso,921)
cinp
1753 sinc1 = 28. *
cinp * dair / dwat
1827 sintailpar(4) = float(
tauwbug)
1843 IF ( sin6a0.LE.0. )
j = 2
1844 WRITE (ndso,921)
yesxno(
j), sin6a0, sin6ws, sin6fc
1857 ELSE IF (
flst4 )
THEN
1859 ELSE IF (
flst6 )
THEN
1961 IF (
iqtype .EQ. 3 )
THEN
1962 WRITE (ndso,923)
'Shallow water',
tailnl
1963 ELSE IF (
iqtype .EQ. 2 )
THEN
1964 WRITE (ndso,923)
'Deep water with scaling',
tailnl
1966 WRITE (ndso,923)
'Deep water',
tailnl
1970 IF (
iqtype .NE. 3 )
THEN
1972 ALLOCATE ( mpars(1)%SNLPS%DPTHNL(
ndepth) )
1973 dpthnl => mpars(1)%SNLPS%DPTHNL
1978 ALLOCATE ( mpars(1)%SNLPS%DPTHNL(
ndepth) )
1979 dpthnl => mpars(1)%SNLPS%DPTHNL
1982 IF (
ndepth .GT. 1 )
THEN
2001 kdfd = max( 0.001 , min( 10. ,
kdfd ) )
2006 IF (
nqdef .EQ. 0 )
THEN
2008 qparms(1:5) = [ 0.25 , 0.00, -1., 1.e7, 0.00 ]
2011 qparms((
j-1)*5+1:
j*5) = [ 0.25, 0.00, -1., 1.e7, 1.e6 ]
2023 WRITE (ndso,1923)
nqdef
2031 ALLOCATE ( mpars(1)%SNLPS%SNLL(
nqdef), &
2032 mpars(1)%SNLPS%SNLM(
nqdef), &
2033 mpars(1)%SNLPS%SNLT(
nqdef), &
2034 mpars(1)%SNLPS%SNLCD(
nqdef), &
2035 mpars(1)%SNLPS%SNLCS(
nqdef) )
2036 snll => mpars(1)%SNLPS%SNLL
2038 snlm => mpars(1)%SNLPS%SNLM
2040 snlt => mpars(1)%SNLPS%SNLT
2042 snlcd => mpars(1)%SNLPS%SNLCD
2044 snlcs => mpars(1)%SNLPS%SNLCS
2077 a34 = max( 0. , min(
a34 , abmax ) )
2190 IF (
phimin .LE. 0. )
THEN
2196 IF (
fpia .LT. fpimin )
THEN
2226 ffxpm =
fxpm3 * grav / 28.
2274 ffxpm =
fxpm3 * grav / 28.
2293 WRITE (ndso,925)
yesxno(
j),
yesxno(3-
j), sds6a1, sds6p1, sds6a2, sds6p2
2298 swl6s6 =
swlb1.GT.0.0
2299 IF (.NOT.swl6s6)
j = 2
2303 WRITE (ndso,940)
yesxno(
j),
'(constant) ' ,swl6b1
2305 WRITE (ndso,940)
yesxno(
j),
'(steepness dependent)' ,swl6b1
2322 WRITE (ndso,927)
gamma
2323 sbtc1 = 2. *
gamma / grav
2367 WRITE (ndso,*)
' Using Hmax/d ratio only.'
2370 ' Using Hmax/d in Miche style formulation.'
2380 uostfilelocal =
'obstructions_local.'//adjustl(trim(gname))//
'.in'
2381 uostfileshadow =
'obstructions_shadow.'//adjustl(trim(gname))//
'.in'
2383 uostfactorshadow = 1
2386 WRITE (ndso,4501) adjustl(trim(uostfilelocal)), adjustl(trim(uostfileshadow)), &
2387 uostfactorlocal, uostfactorshadow
2409 WRITE(ndso,
'(A/A)')
' Sice will be calculated using ' &
2410 //
'user-specified ki values.',
' Required ' &
2411 //
'field input: ice parameter 1.'
2416 WRITE(ndso,
'(A/A)')
' Sice will be calculated using ' &
2417 //
'under-ice boundary layer method.',
' Required ' &
2418 //
'field input: ice parameters 1 and 2.'
2423 WRITE(ndso,
'(A/A)')
' Sice will be calculated using '&
2424 //
'Wang and Shen method.',
' '&
2425 //
'Required field input: ice parameters 1, 2, 3 and 4.'
2430 WRITE(ndso,
'(A/A)')
' Sice will be calculated using '&
2431 //
'Empirical method.',
' '&
2432 //
'Required field input: ice parameters (varies).'
2437 WRITE(ndso,
'(A/A/)')
' Sice will be calculated using '&
2438 //
'effective medium models.',
' '&
2439 //
'Required field input: ice parameters 1, 2, 3 and 4.'
2500 IF (gtype .EQ. ungtype)
THEN
2501 IF (
nbsel .ne. 1)
THEN
2502 IF (
nbsel .gt. 1)
THEN
2503 WRITE (ndse,*)
'MORE THAN ONE UNSTRUCTURED SCHEME SELECTED'
2505 ELSE IF (
nbsel .eq. 0)
THEN
2506 WRITE (ndse,*)
'NOTHING SELECTED FROM THE UNSTRUCTURED PART'
2520 pname =
'Not defined '
2525 pname =
'First order upstream '
2529 pname =
'3rd order UQ'
2532 pname =
'2nd order UNO'
2545 pname =
'UNO2 on SMC grid + diffusion '
2548 IF ( (flcx.OR.flcy.OR.flcth.OR.flck) .AND. .NOT.
flprop )
THEN
2553 IF ( .NOT.(flcx.OR.flcy.OR.flcth.OR.flck) .AND.
flprop )
THEN
2562 IF (
nrprop .GT. 1 )
THEN
2569 WRITE (ndso,951)
pname
2609 WRITE (ndso,952)
status(1:18)
2611 WRITE (ndso,953)
cfltm
2617 WRITE (ndso,952)
status(1:18)
2621 clatmn = cos(
latmin * dera )
2622 IF (
dtime .EQ. 0. )
THEN
2633 WRITE (ndso,952)
status(1:18)
2640 WRITE (ndso,1951)
pnsmc
2647 IF( funo3 )
WRITE (ndso,*) &
2648 " Advection use 3rd order UNO3 instead of UNO2 scheme."
2649 IF( fverg )
WRITE (ndso,*) &
2650 " Extra 1-2-1 average smoothing activated on SMC grid."
2651 IF( fswnd )
WRITE (ndso,*) &
2652 " Sea-point only wind input is required for SMC grid. "
2653 IF( arctc )
WRITE (ndso,*) &
2654 " Arctic polar part will be appended to this SMC grid."
2656 WRITE (ndso,4001) nrlv
2657 WRITE (ndso,4002)
jeqt
2658 WRITE (ndso,4302)
ishft
2659 WRITE (ndso,4003) nbsmc
2666 IF (gtype.NE.ungtype)
THEN
2668 WRITE (ndso,952)
status(1:18)
2671 IF (
wdthcg*(xfr-1.) .GT. 1. )
WRITE (ndso,955) 1./(xfr-1.)
2673 IF (
wdthth*dth .GT. 1. )
WRITE (ndso,955) 1./dth
2692 plon = mod(
plon + 180., 360. ) - 180.
2704 IF (
bplat(
i) == 90. )
THEN
2707 IF (
bplon(
i) == -180. ) cycle
2709 IF (
bplat(
i) < 90. ) cycle
2768 caltype =
'standard'
2959 e3df(2,1) = min(max(1,
i1e3d),nk)
2960 e3df(3,1) = min(max(1,
i2e3d),nk)
2962 e3df(2,2) = min(max(1,
i1th1m),nk)
2963 e3df(3,2) = min(max(1,
i2th1m),nk)
2965 e3df(2,3) = min(max(1,
i1sth1m),nk)
2966 e3df(3,3) = min(max(1,
i2sth1m),nk)
2968 e3df(2,4) = min(max(1,
i1th2m),nk)
2969 e3df(3,4) = min(max(1,
i2th2m),nk)
2971 e3df(2,5) = min(max(1,
i1sth2m),nk)
2972 e3df(3,5) = min(max(1,
i2sth2m),nk)
2977 p2msf(2) = min(max(1,
i1p2sf),nk)
2978 p2msf(3) = min(max(1,
i2p2sf),nk)
2983 us3df(2) = max( 1 , min( nk,
i1us3d) )
2984 us3df(3) = max( 1 , min( nk,
i2us3d) )
2989 usspf(2) = max( 1 , min(25,
iussp ) )
2990 IF (
iussp.GT.25)
THEN
2991 WRITE(ndse,*)
' *** WAVEWATCH III ERROR IN ww3_grid:'
2992 WRITE(ndse,*)
" Stokes drift partition outputs not "
2993 WRITE(ndse,*)
" intended for use with more than 25 "
2994 WRITE(ndse,*)
" partitions. Please reduce IUSSP "
2995 WRITE(ndse,*)
" specified in ww3_grid.inp to proceed "
3005 WRITE (ndso,4971) p2msf(1:3)
3006 WRITE (ndso,4972) us3df(1:3)
3007 WRITE (ndso,4973) e3df(1:3,1)
3008 WRITE (ndso,4974) usspf(1:2)
3010 WRITE(ndso,4975)
j,ussp_wn(
j)
3041 btbeta = min(max(1.,
btbet), 2.)
3042 aaircmin = alog(grav/
aircmin/sig(1))/alog(xfr)+1
3047 IF (
flagtr .LT. 3 )
THEN
3050 IF (
status==
'(user def. values) :')
WRITE (ndso,2961)
3061 IF (
stdy .LE. 0. )
THEN
3066 IF (
stdx .GT. 0 )
THEN
3067 WRITE (ndso,1040)
stdx
3068 WRITE (ndso,1041)
stdy
3072 IF (
stdt .GT. 0 )
THEN
3073 WRITE (ndso,1043)
stdt
3078 WRITE (ndso,962)
pmove
3083 WRITE (ndso,964)
xseed
3098 xp = max( 1.e-6 ,
xp )
3099 xr = max( 1.e-6 ,
xr )
3104 facp =
xp / pi * 0.62e-3 * tpi**4 / grav**2
3106 ihmax = max( 50,
ihm )
3107 hspmin = max( 0.0001 ,
hspm )
3108 wsmult = max( 1. ,
wsm )
3109 wscut = min( 1.0001 , max( 0. ,
wsc ) )
3111 noswll = max( 1 ,
nosw )
3115 IF( ptmeth .EQ. 1 )
THEN
3117 ELSE IF( ptmeth .EQ. 2 )
THEN
3118 pmname =
"Watershedding plus wind cut-off"
3119 ELSE IF( ptmeth .EQ. 3 )
THEN
3120 pmname =
"Watershedding only"
3122 pmnam2 =
"WSC set to 0.0"
3123 ELSE IF( ptmeth .EQ. 4 )
THEN
3124 pmname =
"Wind speed cut-off only"
3125 pmnam2 =
"WSC set to 0.0, NOSW set to 1"
3128 ELSE IF( ptmeth .EQ. 5 )
THEN
3129 WRITE(
pmname,
'("2-Band hi/low cutoff at ", F4.2,"Hz")') ptfcut
3130 pmnam2 =
"WSC set to 0.0, NOSW set to 1"
3135 "*** Error - unknown partitioing method (PTM)! ***"
3144 WRITE (ndso,966) ihmax, hspmin, wsmult, wscut,
yesxno(
j), noswll
3149 fhmax = max( 0.01 ,
fmiche )
3154 WRITE (ndso,967) fhmax, fhmax/sqrt(2.),
yesxno(
j)
3155 IF ( fhmax.LT.0.50 .AND.
j.EQ.1 )
WRITE (ndst,968)
3157 IF (trim(caltype) .NE.
'standard' .AND. &
3158 trim(caltype) .NE.
'360_day' .AND. &
3159 trim(caltype) .NE.
'365_day' )
GOTO 2003
3160 WRITE (ndst,1973) caltype
3209 WRITE (ndso,2810)
cdfac
3215 WRITE (ndso,2920)
cinp
3235 swellf5,
swellf6,
swellf7,
z0rat,
sinbr,
sintable,
tauwbug,
viscstress,
sintail1,
sintail2, &
3250 IF (
iqtype .EQ. 3 )
THEN
3251 IF (
ndepth .EQ. 1 )
THEN
3252 WRITE (ndso,3923) dpthnl(1)
3254 WRITE (ndso,4923) dpthnl(1)
3256 WRITE (ndso,5923) dpthnl(2:
ndepth-1)
3257 WRITE (ndso,6923) dpthnl(
ndepth)
3262 IF (
nqdef .EQ. 1 )
THEN
3263 WRITE (ndso,3923)
qparms(1:5)
3265 WRITE (ndso,4923)
qparms(1:5)
3267 WRITE (ndso,5923)
qparms((
j-1)*5+1:
j*5)
3276 WRITE (ndso,2922) qr5dpt, qr5oml, qi5dis, qi5kev, qi5ipl, qi5pmx
3308 WRITE (ndso,2926)
gamma
3323 WRITE (ndso,2953)
cfltm
3391 WRITE(ndso,nml=sic4)
3401 WRITE (ndso,2946) is1c1, is1c2
3413 WRITE (ndso, 4502) adjustl(trim(uostfilelocal)), adjustl(trim(uostfileshadow)), &
3414 uostfactorlocal, uostfactorshadow
3421 wscut,
'.TRUE.', noswll, fhmax, &
3431 wscut,
'.FALSE.', noswll, fhmax, &
3441 WRITE(ndso,2987) tail_id, tail_lev, tail_tran1, tail_tran2
3444 WRITE(ndso,2987) tail_id, tail_lev, tail_tran1, tail_tran2
3457 fte = 0.25 * sig(nk) * dth * sig(nk)
3458 ftf = 0.20 * dth * sig(nk)
3459 ftwn = 0.20 * sqrt(grav) * dth * sig(nk)
3461 ftwl = grav / 6. / sig(nk) * dth * sig(nk)
3464 * sig(nk)**(2+
wnmeanp*2) * dth
3468 * (sig(nk)/sqrt(grav))**(
wnmeanp*2) * dth
3476 * sig(nk)**(2+
wnmeanp*2) * dth
3480 * (sig(nk)/sqrt(grav))**(
wnmeanp*2) * dth
3493 fxpm = fxpm * grav / 28.
3503 facti1 = 1. / log(xfr)
3504 facti2 = 1. - log(tpi*fr1) * facti1
3511 fachfa = xfr**(-
fachf-2)
3512 fachfe = xfr**(-
fachf)
3520 IF (trim(
nml_grid%COORD).EQ.
'SPHE') flagll=.true.
3521 IF (trim(
nml_grid%COORD).EQ.
'CART') flagll=.false.
3525 READ (
ndsi,*,
END=2001,ERR=2002) GSTRG, FLAGLL,
cstrg
3529 SELECT CASE (trim(
gstrg))
3532 WRITE (ndso,3000)
'rectilinear'
3535 WRITE (ndso,3000)
'curvilinear'
3538 WRITE (ndso,3000)
'unstructured'
3542 WRITE (ndso,3000)
'SMC Grid'
3544 WRITE (ndse,1007) trim(
gstrg)
3550 WRITE (ndso,3001)
'spherical'
3553 WRITE (ndso,3001)
'Cartesian'
3558 iclose = iclose_none
3559 IF ( gtype.NE.ungtype )
THEN
3560 SELECT CASE (trim(
cstrg))
3562 iclose = iclose_none
3563 WRITE (ndso,3002)
'none'
3565 iclose = iclose_smpl
3566 WRITE (ndso,3002)
'simple'
3568 WRITE (ndse,
'(/2A)')
' *** WARNING WW3_GRID: TRIPOLE ', &
3569 'GRID CLOSURE IMPLEMENTATION IS INCOMPLETE ***'
3570 iclose = iclose_trpl
3571 WRITE (ndso,3002)
'tripole'
3572 IF ( gtype.EQ.rlgtype )
THEN
3578 SELECT CASE (trim(
cstrg))
3579 CASE (
'T',
't',
'.TRU',
'.tru')
3580 iclose = iclose_smpl
3581 WRITE (ndso,3002)
'simple'
3583 CASE (
'F',
'f',
'.FAL',
'.fal')
3584 iclose = iclose_none
3585 WRITE (ndso,3002)
'none'
3588 WRITE (ndse,1012) trim(
cstrg)
3592 IF ( iclose.NE.iclose_none .AND. .NOT.flagll )
THEN
3601 SELECT CASE ( gtype )
3603 CASE ( rlgtype, smctype )
3608 WRITE (ndso,3003) nx, ny
3614 WRITE (ndso,3003) nx, ny
3619 IF ( gtype.NE.ungtype)
THEN
3621 READ (
ndsi,*,
END=2001,ERR=2002) NX, ny
3624 WRITE (ndso,3003) nx, ny
3632 do_change_wlv=.false.
3633 IF ( gtype.EQ.ungtype)
THEN
3643 WRITE(ndse,*)
'NO UNST SCHEME SELECTED'
3646 WRITE(ndse,*)
'MORE THAN ONE UNST SCHEME SELECTED'
3662 pname2 =
'N Explicit (Fluctuation Splitting) '
3665 pname2 =
'PSI Explicit (Fluctuation Splitting) '
3668 pname2 =
' Flux Corrected Transport Explicit'
3671 pname2 =
'N Implicit (Fluctuation Splitting) '
3674 pname2 =
'N Implicit (Fluctuation Splitting) for total implicit'
3677 pname2 =
'N Explicit (Fluctuation Splitting) for one exchange explicit DC HPCF '
3680 IF (fstotalimp .or. fstotalexp)
THEN
3689 fsrefraction = .true.
3690 pname2 =
'Refraction done implicitly'
3693 fsrefraction = .false.
3696 fsfreqshift = .true.
3697 pname2 =
'Frequency shifting done implicitly'
3700 fsfreqshift = .false.
3704 pname2 =
'Source terms integrated implicitly'
3711 pname2 =
'Wave setup is added to the WLV'
3721 IF ( gtype.NE.ungtype)
ALLOCATE (
xgrdin(nx,ny),
ygrdin(nx,ny) )
3722 SELECT CASE ( gtype )
3727 CASE ( rlgtype, smctype )
3738 READ (
ndsi,*,
END=2001,ERR=2002) SX, SY,
vsc
3740 READ (
ndsi,*,
END=2001,ERR=2002) X0, Y0,
vsc0
3746 sx = max( 1.e-7 , sx )
3747 sy = max( 1.e-7 , sy )
3748 IF ( iclose.EQ.iclose_smpl ) sx = 360. / real(nx)
3788 READ (
ndsi,*,
END=2001,ERR=2002) NDSG, VSC, VOF, &
3796 IF (
idfm.EQ.2)
WRITE (ndso,3008) trim(
rform)
3798 WRITE (ndso,3009) trim(
fname)
3801 IF (
idfm .EQ. 3 )
THEN
3802 WRITE (ndse,1004)
ndsg
3810 IF (
idfm .EQ. 3 )
THEN
3811 IF (
from.EQ.
'NAME')
THEN
3813 form=
'UNFORMATTED', convert=file_endian, &
3817 form=
'UNFORMATTED', convert=file_endian, &
3821 IF (
from.EQ.
'NAME')
THEN
3831 CALL ina2r (
xgrdin, nx, ny, 1, nx, 1, ny,
ndsg, ndst, ndse, &
3847 READ (
ndsi,*,
END=2001,ERR=2002) NDSG, VSC, VOF, &
3855 IF (
idfm.EQ.2)
WRITE (ndso,3008) trim(
rform)
3857 WRITE (ndso,3009) trim(
fname)
3860 IF (
idfm .EQ. 3 )
THEN
3861 WRITE (ndse,1004)
ndsg
3869 IF (
idfm .EQ. 3 )
THEN
3870 IF (
from.EQ.
'NAME')
THEN
3872 form=
'UNFORMATTED', convert=file_endian, &
3876 form=
'UNFORMATTED', convert=file_endian, &
3880 IF (
from.EQ.
'NAME')
THEN
3890 CALL ina2r (
ygrdin, nx, ny, 1, nx, 1, ny,
ndsg, ndst, ndse, &
3898 WRITE (ndse,1011)
idla
3936 IF (gtype.NE.ungtype)
THEN
3949 READ (
ndsi,*,
END=2001,ERR=2002) ZLIM, DMIN, NDSG, VSC, IDLA, &
3953 dmin = max( 1.e-3 , dmin )
3954 IF ( abs(
vsc) .LT. 1.e-7 )
vsc = 1.
3959 IF (
idfm.EQ.2)
WRITE (ndso,973) trim(
rform)
3961 WRITE (ndso,974) trim(
fname)
3971 IF ( gtype.NE.ungtype )
THEN
3984 IF( gtype .NE. smctype )
THEN
3987 IF (
idfm .EQ. 3 )
THEN
3988 WRITE (ndse,1004)
ndsg
3994 IF (
idfm .EQ. 3 )
THEN
3995 IF (
from.EQ.
'NAME')
THEN
3997 form=
'UNFORMATTED', convert=file_endian,&
4000 OPEN (
ndsg, form=
'UNFORMATTED', convert=file_endian, &
4004 IF (
from.EQ.
'NAME')
THEN
4014 CALL ina2r (
zbin, nx, ny, 1, nx, 1, ny,
ndsg, ndst, ndse, &
4040 IF (gtype .EQ. ungtype)
THEN
4051 IF( gtype .NE. smctype )
THEN
4056 IF ( trflag.GT.6 .OR. trflag.LT.0 ) trflag = 0
4058 IF ( trflag .EQ. 0 )
THEN
4059 WRITE (ndso,976)
'Not available.'
4060 ELSE IF ( trflag.EQ.1 .OR. trflag.EQ.3 .OR. trflag.EQ.5 )
THEN
4061 WRITE (ndso,976)
'In between grid points.'
4063 WRITE (ndso,976)
'At grid points.'
4066 IF ( trflag .NE. 0 )
THEN
4080 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, VSC, IDLA, IDFT, RFORM, &
4084 IF ( abs(
vsc) .LT. 1.e-7 )
vsc = 1.
4095 IF (
idft .EQ. 3 )
THEN
4096 WRITE (ndse,1004)
ndstr
4102 IF ( (
idfm.EQ.3 .AND.
idft.NE.3 ) .OR. &
4103 (
idfm.NE.3 .AND.
idft.EQ.3 ) )
THEN
4108 IF (
idft .EQ. 3 )
THEN
4109 IF (
from.EQ.
'NAME')
THEN
4111 form=
'UNFORMATTED', convert=file_endian,
status=
'OLD',err=2000, &
4114 OPEN (
ndstr, form=
'UNFORMATTED', convert=file_endian, &
4118 IF (
from.EQ.
'NAME')
THEN
4130 CALL ina2r (
obsx, nx, ny, 1, nx, 1, ny,
ndstr, ndst, ndse, &
4135 CALL ina2r (
obsy, nx, ny, 1, nx, 1, ny,
ndstr, ndst, ndse, &
4163 IF ( polat == 90. )
THEN
4171 polat, polon, nx*ny )
4177 WRITE (ndso,4203) polat, polon
4179 WRITE (ndso,4201) (
ix,
ix=1,nx,nx/3)
4180 WRITE (ndso,4202) 1,(
angldin(
ix, 1),
ix=1,nx,nx/3)
4181 WRITE (ndso,4202) ny,(
angldin(
ix,ny),
ix=1,nx,nx/3)
4182 IF ( flagunr )
WRITE (ndso,4204)
4189 IF( gtype .EQ. smctype )
THEN
4203 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, IDLA, IDFM, RFORM,
tname
4206 form=
'FORMATTED',
status=
'OLD',err=2000)
4214 CALL ina2i (
ijkcelin, 5, ncel, 1, 5, 1, ncel,
ndstr, ndst, ndse, &
4222 WRITE (ndso,4005)
tname
4235 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, IDLA, IDFM, RFORM,
tname
4238 form=
'FORMATTED',
status=
'OLD',err=2000)
4246 CALL ina2i (
ijkufcin, 7, nufc, 1, 7, 1, nufc,
ndstr, ndst, ndse, &
4253 WRITE (ndso,4008)
tname
4266 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, IDLA, IDFM, RFORM,
tname
4269 form=
'FORMATTED',
status=
'OLD',err=2000)
4277 CALL ina2i (
ijkvfcin, 8, nvfc, 1, 8, 1, nvfc,
ndstr, ndst, ndse, &
4284 WRITE (ndso,4011)
tname
4298 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, IDLA, IDFM, RFORM,
tname
4301 form=
'FORMATTED',
status=
'OLD',err=2000)
4310 WRITE (ndso,4111)
tname
4325 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, IDLA, IDFM, RFORM,
tname
4328 form=
'FORMATTED',
status=
'OLD',err=2000)
4334 WRITE (ndso,4013)
tname
4351 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, IDLA, IDFM, RFORM,
tname
4354 form=
'FORMATTED',
status=
'OLD',err=2000)
4355 READ (
ndstr,*) narc, nbgl, nbac
4356 WRITE (ndso,4015) narc, nbgl, nbac
4359 CALL ina2i (
ijkcelac, 5, narc, 1, 5, 1, narc,
ndstr, ndst, ndse, &
4366 WRITE (ndso,4016)
tname
4379 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, IDLA, IDFM, RFORM,
tname
4382 form=
'FORMATTED',
status=
'OLD',err=2000)
4384 WRITE (ndso,4017)
naui
4387 CALL ina2i (
ijkufcac, 7,
naui, 1, 7, 1,
naui,
ndstr, ndst, ndse, &
4400 WRITE (ndso,4018)
tname
4413 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, IDLA, IDFM, RFORM,
tname
4416 form=
'FORMATTED',
status=
'OLD',err=2000)
4418 WRITE (ndso,4019)
navj
4421 CALL ina2i (
ijkvfcac, 8,
navj, 1, 8, 1,
navj,
ndstr, ndst, ndse, &
4434 WRITE (ndso,4020)
tname
4460 IF (gtype.EQ.ungtype.AND.
ugobcfile(:
j).NE.
'unset') &
4477 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, IDLA, IDFT, RFORM, &
4483 IF (
from .EQ.
'PART' )
THEN
4488 IF ( iclose .EQ. iclose_trpl )
THEN
4489 WRITE(ndse,*)
'PROGRAM W3GRID STATUS MAP CALCULATION IS '// &
4490 'NOT TESTED FOR TRIPOLE GRIDS FOR CASE WHERE USER OPTS '// &
4491 'TO READ DATA IN PARTS. STOPPING NOW (107).'
4497 IF (
iloop .EQ. 1 )
THEN
4498 WRITE (ndso,979)
'boundary points'
4501 WRITE (ndso,979)
'excluded points'
4509 IF (
iloop.EQ.1)
THEN
4519 ELSE IF (
iloop.EQ.2)
THEN
4531 READ (
ndsi,*,
END=2001,ERR=2002) IX, IY,
connct
4536 IF (
ix.EQ.0 .AND.
iy.EQ.0)
EXIT
4541 IF (
ix.LT.1 .OR.
ix.GT.nx .OR.
iy.LT.1 .OR.
iy.GT.ny)
THEN
4543 WRITE (ndso,*)
' ',
ix,
iy
4552 IF (
idx.EQ.0 .OR.
idy.EQ.0 .OR. &
4553 abs(
idx).EQ.abs(
idy) )
THEN
4554 nba = max( max(abs(
idx),abs(
idy))-1 , 0 )
4565 WRITE(ndso,*)
'WARNING: POINT (',
ix,
',',
iy, &
4566 ') CANNOT BE GIVEN THE STATUS ',
nstat
4573 WRITE (ndso,*)
' ',
ix ,
iy
4574 WRITE (ndso,*)
' ',
ixo,
iyo
4596 IF (
iloop .EQ. 2 )
THEN
4611 READ (
ndsi,*,
END=2001,ERR=2002) IX,
iy
4616 IF (
ix.EQ.0 .AND.
iy.EQ.0)
EXIT
4620 IF (
ix.LT.1 .OR.
ix.GT.nx .OR.
iy.LT.1 .OR.
iy.GT.ny)
THEN
4622 WRITE (ndso,*)
' ',
ix,
iy
4630 WRITE (ndso,*)
' ',
ix,
iy
4677 IF (
nbt .NE. 0 )
THEN
4687 IF ( gtype.NE.ungtype )
THEN
4694 IF ( iclose.EQ.iclose_none )
THEN
4720 IF( gtype .NE. smctype )
THEN
4725 IF (
from.EQ.
'NAME')
WRITE (ndso,974)
tname
4728 IF (
idft .EQ. 3 )
THEN
4729 WRITE (ndse,1004)
ndstr
4735 IF (
idft .EQ. 3 )
THEN
4736 IF (
from.EQ.
'NAME')
THEN
4738 form=
'UNFORMATTED', convert=file_endian,
status=
'OLD',err=2000, &
4741 OPEN (
ndstr, form=
'UNFORMATTED', convert=file_endian, &
4745 IF (
from.EQ.
'NAME')
THEN
4755 ALLOCATE (
readmp(nx,ny) )
4756 CALL ina2i (
readmp, nx, ny, 1, nx, 1, ny,
ndstr, ndst, &
4759 IF ( iclose.EQ.iclose_none )
THEN
4768 IF (
readmp(
ix,ny) .EQ. 1 .AND. iclose .NE. iclose_trpl) &
4806 IF( gtype .EQ. smctype )
THEN
4820 IF ( .NOT. flbpi )
THEN
4823 WRITE (ndso,986) nbi
4833 IF (gtype.NE.ungtype)
THEN
4854 IF (
nbt .EQ. 0 )
THEN
4857 WRITE (ndso,1986)
nbt
4862 CALL w3dimx ( 1, nx, ny, nsea, ndse, ndst &
4864 , ncel, nufc, nvfc, nrlv, nbsmc &
4865 , narc, nbac, nspec &
4869 WRITE (ndso,4021) ncel
4884 IF (gtype.EQ.ungtype) refpars(2:5)=0.
4886 reflc(3,:)=refpars(7)
4891 IF (gtype.NE.ungtype)
THEN
4899 CALL w3gntx ( 1, 6, 6 )
4905 IF( gtype .NE. smctype )
THEN
4912 ALLOCATE (
mapout(nx,ny) )
4917 CALL prtblk (ndst, nx, ny, nx,
zbin,
mapout, 1, 0., &
4918 1, nx,
ix3, 1, ny,
iy3,
'Zb',
'm')
4935 IF ( mapsta(
iy,
ix) .NE. 0 )
THEN
4946 clats(
isea) = cos(
y*dera)
4948 cthg0s(
isea) = - tan(dera*
y) / radius
4964 IF ( trflag .NE. 0 )
THEN
4984 WRITE (ndso,4022) nlvcel
4985 WRITE (ndso,4023) nlvufc
4986 WRITE (ndso,4024) nlvvfc
4995 ALLOCATE (
ijkdep(-9:ncel) )
4998 WRITE (ndso,4025) ncel
4999 ijkcel(1:4, 1:nglo)=
ijkcelin(1:4, 1:nglo)
5006 ijkcel(1:4, nglo+1:ncel)=
ijkcelac(1:4, 1:narc)
5014 WRITE (ndso,4006) 1,(ijkcel(
ix, 1),
ix=1,4),
ijkdep(1)
5019 WRITE (ndso,4009) 1,(ijkufc(
ix, 1),
ix=1,7)
5021 WRITE (ndso,4009)
jj,(ijkufc(
ix,
jj),
ix=1,7)
5024 WRITE (ndso,4012) 1,(ijkvfc(
ix, 1),
ix=1,7),
ijkvfc8(1)
5034 ijkcel(2, -9:0)=
jeqt
5043 ijkcel(3,-
ip)=ijkcel(3,-
ip+1)*2
5053 WRITE (ndso,4031) ncel
5056 mrfct = 2**(nrlv - 1)
5057 WRITE (ndso,4032) mrfct
5060 symr = sy*dera/float( mrfct )
5062 yj0r = ( y0 - 0.5*sy )*dera
5066 IF( arctc .AND. (
isea .EQ. ncel) )
THEN
5072 ix=ijkcel(1,
isea)/mrfct + 1
5073 iy=ijkcel(2,
isea)/mrfct + 1
5074 ik=max(1, ijkcel(3,
isea)/mrfct)
5075 js=max(1, ijkcel(4,
isea)/mrfct)
5079 IF ((
ix+
ik-1 .GT. nx) .OR. (
ix .LE. 0))
THEN
5084 IF ((
iy+
js-1 .GT. ny) .OR. (
iy .LE. 0))
THEN
5106 IF(
y .GE. hpi-0.1*
symr)
y=hpi -
symr*0.5*float( mrfct )
5108 clats(
isea) = cos(
y )
5110 cthg0s(
isea)= - tan(
y ) / radius
5127 WRITE (ndso,4033) minval( mapsf(:,1) ), maxval( mapsf(:,1) )
5128 WRITE (ndso,4034) minval( mapsf(:,2) ), maxval( mapsf(:,2) )
5129 WRITE (ndso,4035) minval( mapsf(:,3) ), maxval( mapsf(:,3) )
5130 WRITE (ndso,4036) minval( mapfs(:,:) ), maxval( mapfs(:,:) )
5144 ix=ijkcel(1,
isea)/mrfct + 1
5145 iy=ijkcel(2,
isea)/mrfct + 1
5146 ik=max(1, ijkcel(3,
isea)/mrfct)
5147 js=max(1, ijkcel(4,
isea)/mrfct)
5158 DO isea=nglo+1, ncel
5160 IF(
isea .EQ. ncel)
THEN
5166 ix=ijkcel(1,
isea)/mrfct + 1
5167 iy=ijkcel(2,
isea)/mrfct + 1
5168 ik=max(1, ijkcel(3,
isea)/mrfct)
5169 js=max(1, ijkcel(4,
isea)/mrfct)
5178 WRITE (ndso,4037) narc
5179 WRITE (ndso,4038) (angarc(
ix),
ix=1,narc,narc/8)
5183 ix=ijkcel(1,
ip+nglo)
5184 iy=ijkcel(2,
ip+nglo)
5186 IF( (
ix .EQ. ijkcel(1,
isea)) .AND. &
5187 & (
iy .EQ. ijkcel(2,
isea)) )
THEN
5192 WRITE (ndso,4039) nbac
5193 WRITE (ndso,4040) (iclbac(
ix),
ix=1,nbac,nbac/8)
5197 DO isea=nglo+1, ncel-1
5216 CALL prtblk (ndst, nx, ny, nx,
zbin,
mapout, 0, 0., &
5217 1, nx,
ix3, 1, ny,
iy3,
'Sea points',
'm')
5222 mapwn(
isp) = 1 + (
isp-1)/nth
5223 mapth(
isp) = 1 + mod(
isp-1,nth)
5228 WRITE (ndso,1100)
nmap
5241 OPEN (
ndsm,
file=trim(fnmpre)//
'mask.ww3')
5243 WRITE (
ndsm,998) min(1,mapsta(
iy,:))
5249 IF ( trflag .GT. 0 )
THEN
5251 WRITE (ndso,1103)
'X',
nmapb
5261 WRITE (ndso,1103)
'Y',
nmapb
5275 OPEN (
ndsm,
file=trim(fnmpre)//
'mapsta.ww3', recl=2*nx*ny*50+1)
5401 IF (gtype.EQ.ungtype)
THEN
5430 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, VSC, IDLA, IDFT, RFORM, &
5434 IF ( abs(
vsc) .LT. 1.e-7 )
vsc = 1.
5445 IF (
idft .EQ. 3 )
THEN
5446 WRITE (ndse,1004)
ndstr
5452 IF ( (
idfm.EQ.3 .AND.
idft.NE.3 ) .OR. &
5453 (
idfm.NE.3 .AND.
idft.EQ.3 ) )
THEN
5458 IF (
idft .EQ. 3 )
THEN
5459 IF (
from.EQ.
'NAME')
THEN
5461 form=
'UNFORMATTED', convert=file_endian,
status=
'OLD',err=2000, &
5464 OPEN (
ndstr, form=
'UNFORMATTED', convert=file_endian, &
5468 IF (
from.EQ.
'NAME')
THEN
5487 CALL ina2r (
refs, nx, ny, 1, nx, 1, ny,
ndstr, ndst, ndse, &
5495 WRITE (ndso,1105)
nmapb
5497 #if defined W3_T && defined W3_REF1
5498 WRITE(ndso,*)
'Maximum slope for reflection:',maxval(
refs*
refmap)
5506 #if defined W3_T && defined W3_REF1
5545 READ (
ndsi,*,
END=2001,ERR=2002) NDSTR, VSC, IDLA, IDFT, RFORM, &
5549 IF ( abs(
vsc) .LT. 1.e-7 )
THEN
5564 IF (
idft .EQ. 3 )
THEN
5565 WRITE (ndse,1004)
ndstr
5571 IF ( (
idfm.EQ.3 .AND.
idft.NE.3 ) .OR. &
5572 (
idfm.NE.3 .AND.
idft.EQ.3 ) )
THEN
5577 IF (
idft .EQ. 3 )
THEN
5578 IF (
from.EQ.
'NAME')
THEN
5580 form=
'UNFORMATTED', convert=file_endian,
status=
'OLD',err=2000, &
5583 OPEN (
ndstr, form=
'UNFORMATTED', convert=file_endian, &
5587 IF (
from.EQ.
'NAME')
THEN
5599 CALL ina2r (
sed_d50file, nx, ny, 1, nx, 1, ny,
ndstr, ndst, ndse, &
5615 sed_d50(
isea) = max(sed_d50(
isea),1e-5)
5619 sed_dstar=(grav*(sed_sg-1)/nu_water**2)**(0.333333)*sed_d50(
isea)
5636 OPEN (
ndss,
file=trim(fnmpre)//
'ww3_grid.scratch',form=
'FORMATTED')
5640 IF (
iloop.EQ.2 )
CALL w3dmo5 ( 1, ndst, ndse, 2 )
5650 IF (
iloop .EQ. 1 )
THEN
5672 READ (
ndsi2,*,
END=2001,ERR=2002) XO0, YO0, DXO, DYO,
npo
5694 IF (
npo.NE.0 )
THEN
5701 IF ( nfbpo.GE.1 .AND.
iloop.EQ.2 )
THEN
5702 WRITE (ndso,991) nfbpo, nbo(nfbpo) - nbo(nfbpo-1), &
5703 nbo2(nfbpo) - nbo2(nfbpo-1)
5706 IF (
bplat(nfbpo) < 90. .OR. polat < 90. ) &
5711 IF ( nbo(nfbpo) - nbo(nfbpo-1) .EQ. 1 )
THEN
5724 ip0 = nbo(nfbpo-1)+1
5730 WRITE (ndso,1993)
ip-nbo(nfbpo-1), &
5733 ip+
ipi-nbo(nfbpo-1), &
5737 WRITE (ndso,3993)
ip-nbo(nfbpo-1), &
5740 ip+
ipi-nbo(nfbpo-1), &
5745 IF ( mod(
ipn-
ip0+1,2) .EQ. 1 )
THEN
5747 WRITE (ndso, 993)
iph+1-nbo(nfbpo-1), &
5751 WRITE (ndso,2993)
iph+1-nbo(nfbpo-1), &
5760 IF (
npo .EQ. 0 )
EXIT
5763 IF ( nfbpo .GT. 9 )
THEN
5767 nbo2(nfbpo) = nbo2(nfbpo-1)
5776 IF (
allocated(
bdylon) .eqv. .true. )
THEN
5778 IF (
bpolat < 90. .OR. polat < 90. ) &
5782 IF (
bpolat < 90. .OR. polat < 90. ) &
5818 IF ( polon < -90. .OR. polon > 90. )
THEN
5826 IF ( polat < 90. )
THEN
5835 IF ( polat < 90. )
THEN
5867 IF ( ( mapsta(
iyr(1),
ixr(1)).GT.0 .AND. &
5868 rd(1).GT.0.05 ) .OR. &
5869 ( mapsta(
iyr(2),
ixr(2)).GT.0 .AND. &
5870 rd(2).GT.0.05 ) .OR. &
5871 ( mapsta(
iyr(3),
ixr(3)).GT.0 .AND. &
5872 rd(3).GT.0.05 ) .OR. &
5873 ( mapsta(
iyr(4),
ixr(4)).GT.0 .AND. &
5874 rd(4).GT.0.05 ) )
THEN
5879 IF (
iloop .EQ. 1 ) cycle
5884 IF ( polat < 90. )
THEN
5896 IF ( mapsta(
iyr(
j),
ixr(
j)).GT.0 .AND. &
5897 rd(
j).GT.0.05 )
THEN
5924 DO ist=nbo2(nfbpo-1)+1, nbo2(nfbpo)
5931 nbo2(nfbpo) = nbo2(nfbpo) + 1
5932 ipbpo(
nbotot,
j) = nbo2(nfbpo) - nbo2(nfbpo-1)
5933 isbpo(nbo2(nfbpo)) =
iseai(
j)
5974 IF ( .NOT. flbpo )
THEN
5977 WRITE (ndso,997)
nbotot, nbo2(nfbpo)
5993 CALL w3iogr (
'WRITE',
ndsm &
6009 WRITE (ndse,1000)
ierr
6017 WRITE (ndse,1002)
ierr
6025 IF ( gtype .NE. ungtype)
THEN
6026 IF ( nx*ny .NE. nsea )
THEN
6027 WRITE (ndso,9997) nx, ny, nx*ny, nsea, &
6028 100.*real(nsea)/real(nx*ny), nbi,
nland,
nbt
6030 WRITE (ndso,9998) nx, ny, nx*ny, nsea, nbi,
nland,
nbt
6032 ELSE IF ( gtype .EQ. ungtype )
THEN
6033 IF ( nx*ny .NE. nsea )
THEN
6034 WRITE (ndso,9997) 0, 0, nx*ny, nsea, &
6035 100.*real(nsea)/real(nx*ny), nbi,
nland,
nbt
6037 WRITE (ndso,9998) 0, 0, nx*ny, nsea, nbi,
nland,
nbt
6044 grid1_units=
'degrees'
6046 CALL get_scrip_info(1, &
6047 & grid1_center_lon, grid1_center_lat, &
6048 & grid1_corner_lon, grid1_corner_lat, grid1_mask, &
6049 & grid1_dims, grid1_size, grid1_corners, grid1_rank)
6055 IF (gtype .EQ. ungtype)
THEN
6057 DEALLOCATE(grid1_dims)
6058 ALLOCATE(grid1_dims(grid1_rank))
6059 grid1_dims(1) = grid1_size
6065 IF (grid1_center_lon(
i) < 0.0)
THEN
6066 grid1_center_lon(
i) = grid1_center_lon(
i)+360.0
6068 DO j = 1,grid1_corners
6069 IF (grid1_corner_lon(
j,
i) < 0.0)
THEN
6070 grid1_corner_lon(
j,
i) = grid1_corner_lon(
j,
i)+360.0
6077 ierr = nf90_create(trim(
'scrip.nc'), nf90_netcdf4,
ncid)
6084 ierr = nf90_def_var(
ncid,
'grid_center_lat', nf90_double, &
6086 ierr = nf90_def_var(
ncid,
'grid_center_lon', nf90_double, &
6088 ierr = nf90_def_var(
ncid,
'grid_corner_lat', nf90_double, &
6091 ierr = nf90_def_var(
ncid,
'grid_corner_lon', nf90_double, &
6094 ierr = nf90_def_var(
ncid,
'grid_imask', nf90_int, &
6096 ierr = nf90_def_var(
ncid,
'grid_dims', nf90_int, &
6102 ALLOCATE(grid1_imask(grid1_dims(1)))
6104 DO i = 1,grid1_dims(1)
6105 IF (grid1_mask(
i))
THEN
6133 900
FORMAT (/15
x,
' *** WAVEWATCH III Grid preprocessor *** '/ &
6134 15
x,
'==============================================='/)
6135 901
FORMAT (
' Comment character is ''',a,
''''/)
6136 902
FORMAT (
' Grid name : ',a/)
6137 903
FORMAT (/
' Spectral discretization : '/ &
6138 ' --------------------------------------------------'/ &
6139 ' Number of directions :',i4/ &
6140 ' Directional increment (deg.):',f6.1)
6141 904
FORMAT (
' First direction (deg.):',f6.1)
6142 905
FORMAT (
' Number of frequencies :',i4/ &
6143 ' Frequency range (Hz) :',f9.4,
'-',f6.4/ &
6144 ' Increment factor :',f8.3/)
6146 910
FORMAT (/
' Model definition :'/ &
6147 ' --------------------------------------------------')
6148 911
FORMAT (
' Dry run (no calculations) : ',a/ &
6149 ' Propagation in X-direction : ',a/ &
6150 ' Propagation in Y-direction : ',a/ &
6151 ' Refraction : ',a/ &
6152 ' Current-induced k-shift : ',a/ &
6153 ' Source term calc. and int. : ',a/)
6154 912
FORMAT (/
' Time steps : '/ &
6155 ' --------------------------------------------------'/ &
6156 ' Maximum global time step (s) :',f8.2/ &
6157 ' Maximum CFL time step X-Y (s) :',f8.2/ &
6158 ' Maximum CFL time step k-theta (s) :',f8.2/ &
6159 ' Minimum source term time step (s) :',f8.2/)
6160 913
FORMAT (/
' WARNING, TIME STEP LESS THAN 1 s, NITER:',i8 /)
6161 915
FORMAT (
' Preprocessing namelists ...')
6162 916
FORMAT (
' Preprocessing namelists finished.'/)
6163 917
FORMAT (/
' Equivalent namelists ...'/)
6164 918
FORMAT (/
' Equivalent namelists finished.'/)
6167 810
FORMAT (/
' Stresses (Wu 1980)'/ &
6168 ' --------------------------------------------------'/)
6171 810
FORMAT (/
' Stresses (T&C 96)'/ &
6172 ' --------------------------------------------------'/)
6175 810
FORMAT (/
' Stresses (T&C 96 capped) ',a/ &
6176 ' --------------------------------------------------')
6179 810
FORMAT (/
' Stresses (Hwang 2011) ',a/ &
6180 ' --------------------------------------------------')
6181 811
FORMAT (
' drag coefficient scaling :',f8.2 /)
6182 2810
FORMAT (
' &FLX4 CDFAC =',f6.3,
' /')
6185 810
FORMAT (/
' Direct use of stress from input'/ &
6186 ' --------------------------------------------------'/)
6189 811
FORMAT (
' Max Cd * 10^3 :',f8.2/ &
6191 2810
FORMAT (
' &FLX3 CDMAX =',f6.2,
'E-3 , CTYPE = ',i1,
' /')
6195 820
FORMAT (/
' Linear input not defined.'/)
6198 820
FORMAT (/
' Seeding as proxi for linear input.'/)
6202 820
FORMAT (/
' Linear input (C&M-R 82) ',a/ &
6203 ' --------------------------------------------------')
6204 821
FORMAT (
' CLIN :',f8.2/ &
6205 ' Factor for fPM in filter :',f8.2/ &
6206 ' Factor for fh in filter :',f8.2/)
6207 2820
FORMAT (
' &SLN1 CLIN =',f6.1,
', RFPM =',f6.2, &
6208 ', RFHF =',f6.2,
' /')
6212 920
FORMAT (/
' Wind input not defined.'/)
6216 920
FORMAT (/
' Wind input (WAM-3) ',a/ &
6217 ' --------------------------------------------------')
6218 921
FORMAT (
' Cinp :',e10.3/)
6219 2920
FORMAT (
' &SIN1 CINP =',f7.3,
' /')
6223 920
FORMAT (/
' Wind input (T&C 1996) ',a/ &
6224 ' --------------------------------------------------')
6225 921
FORMAT (
' Height of input wind (m) :',f8.2/ &
6226 ' Factor negative swell :',f9.3/)
6229 1921
FORMAT (
' Effective wind mean factor :',f8.2/ &
6230 ' Stability par. offset :',f9.3/ &
6231 ' Stab. correction :',f9.3,f8.3/&
6232 ' Stab. correction stab. fac. :',f7.1,f9.1/)
6235 2920
FORMAT (
' &SIN2 ZWND =',f5.1,
', SWELLF =',f6.3,
' /')
6238 2921
FORMAT (
' &SIN2 ZWND =',f5.1,
', SWELLF =',f6.3,
', STABSH =', &
6239 f6.3,
', STABOF = ',e10.3,
','/ &
6240 ' CNEG =',f7.3,
', CPOS =',f7.3,
', FNEG =',f7.1,
' /')
6244 920
FORMAT (/
' Wind input (WAM 4+) ',a/ &
6245 ' --------------------------------------------------')
6246 921
FORMAT (
' minimum Charnock coeff. :',f10.4/ &
6247 ' betamax :',f9.3/ &
6248 ' power of cos. in wind input :',f9.3/ &
6251 ' Height of input wind (m) :',f8.2/ &
6252 ' swell attenuation factor :',f9.3/ )
6253 2920
FORMAT (
' &SIN3 ZWND =',f5.1,
', ALPHA0 =',f8.5,
', Z0MAX =',f8.5,
', BETAMAX =', &
6255 ' SINTHP =',f8.5,
', ZALP =',f8.5,
','/ &
6256 ' SWELLF =',f8.5,
'R /'/)
6260 920
FORMAT (/
' Wind input (WAM 4+) ',a/ &
6261 ' --------------------------------------------------')
6262 921
FORMAT (
' minimum Charnock coeff. :',f10.4/ &
6263 ' betamax :',f9.3/ &
6264 ' power of cos. in wind input :',f9.3/ &
6267 ' Height of input wind (m) :',f8.2/ &
6268 ' wind stress sheltering :',f9.3/ &
6269 ' swell attenuation param. :',i5/ &
6270 ' swell attenuation factor :',f9.3/ &
6271 ' swell attenuation factor2 :',f9.3/ &
6272 ' swell attenuation factor3 :',f9.3/ &
6273 ' critical Reynolds number :',f9.1/ &
6274 ' swell attenuation factor5 :',f9.3/ &
6275 ' swell attenuation factor6 :',f9.3/ &
6276 ' swell attenuation factor7 :',f14.3/ &
6277 ' ratio of z0 for orb. & mean :',f9.3/)
6278 2920
FORMAT (
' &SIN4 ZWND =',f5.1,
', ALPHA0 =',f8.5,
', Z0MAX =',f8.5,
', BETAMAX =', &
6280 ' SINTHP =',f8.5,
', ZALP =',f8.5,
', TAUWSHELTER =',f8.5, &
6281 ', SWELLFPAR =',i2,
','/ &
6282 ' SWELLF =',f8.5,
', SWELLF2 =',f8.5, &
6283 ', SWELLF3 =',f8.5,
', SWELLF4 =',f9.1,
','/ &
6284 ' SWELLF5 =',f8.5,
', SWELLF6 =',f8.5, &
6285 ', SWELLF7 =',f12.2,
', Z0RAT =',f8.5,
', SINBR =',f8.5,
','/ &
6286 ' SINTABLE =',i2,
', TAUWBUG =',i2, &
6287 ', VISCSTRESS =',f8.5,
', SINTAIL1 =',f8.5,
', SINTAIL2 =',f8.5,
',' / &
6288 ', CAPCHA =',f8.5,
', CHAMIN =',f8.5,
', CHA0 =',f8.5,
', UCAP =',f5.1,
', SIGMAUCAP =', &
6293 920
FORMAT (/
' Wind input (Donelan et al, 2006) ',a/ &
6294 ' --------------------------------------------------')
6295 921
FORMAT (
' negative wind input active : ',a/ &
6296 ' attenuation factor : ',f6.2/ &
6297 ' wind speed scaling factor : ',f6.2/ &
6298 ' frequency cut-off factor : ',f6.2/)
6299 2920
FORMAT (
' &SIN6 SINA0 =', f6.3,
', SINWS =', f6.2,
', SINFC =', f6.2,
' /')
6303 922
FORMAT (/
' Nonlinear interactions not defined.'/)
6307 922
FORMAT (/
' Nonlinear interactions (DIA) ',a/ &
6308 ' --------------------------------------------------')
6309 923
FORMAT (
' Lambda :',f8.2/ &
6310 ' Prop. constant :',e10.3/ &
6311 ' kd conversion factor :',f8.2/ &
6312 ' minimum kd :',f8.2/ &
6313 ' shallow water constants :',f8.2,2f6.2/)
6314 2922
FORMAT (
' &SNL1 LAMBDA =',f7.3,
', NLPROP =',e10.3, &
6315 ', KDCONV =',f7.3,
', KDMIN =',f7.3,
','/ &
6316 ' SNLCS1 =',f7.3,
', SNLCS2 =',f7.3, &
6317 ', SNLCS3 = ',f7.3
','/ &
6318 ' IQTYPE =',i2,
', TAILNL =',f5.1,
','/ &
6319 ' GQMNF1 =',i2,
', GQMNT1 =',i2,
',', &
6320 ' GQMNQ_OM2 =',i2,
', GQMTHRSAT =',e11.4,
', GQMTHRCOU =',f4.3,
','/ &
6321 ' GQAMP1 =',f5.3,
', GQAMP2 =',f5.3,
', GQAMP3 =',f5.3,
', GQAMP4 =',f5.3,
' /')
6325 922
FORMAT (/
' Nonlinear interactions (WRT) ',a/ &
6326 ' --------------------------------------------------')
6327 923
FORMAT (
' Deep/shallow options : ',a/ &
6328 ' Power of h-f tail : ',f6.1)
6329 1923
FORMAT (
' Number of depths used : ',i4/ &
6330 ' Depths (m) :',5f7.1)
6331 2923
FORMAT (
' ',5f7.1)
6332 2922
FORMAT (
' &SNL2 IQTYPE =',i2,
', TAILNL =',f5.1,
',', &
6333 ' NDEPTH =',i3,
' /')
6334 3923
FORMAT (
' &SNL2 DEPTHS =',f9.2,
' /')
6335 4923
FORMAT (
' &ANL2 DEPTHS =',f9.2,
' ,')
6336 5923
FORMAT (
' ',f9.2,
' ,')
6337 6923
FORMAT (
' ',f9.2,
' /')
6341 922
FORMAT (/
' Nonlinear interactions (GMD) ',a/ &
6342 ' --------------------------------------------------')
6343 923
FORMAT (
' Powers in scaling functions : ',2f7.2/ &
6344 ' Nondimension filter depths : ',2f7.2)
6345 1923
FORMAT (
' Number of quad. definitions : ',i4)
6346 2923
FORMAT (
' ',2f8.3,f6.1,2e12.4)
6347 2922
FORMAT (
' &SNL3 NQDEF =',i3,
', MSC =',f6.2,
', NSC =', &
6348 f6.2,
', KDFD =',f6.2,
', KDFS =',f6.2,
' /')
6349 3923
FORMAT (
' &ANL3 QPARMS = ',2(f5.3,
', '),f5.1,
', ',e11.4, &
6351 4923
FORMAT (
' &ANL3 QPARMS = ',2(f5.3,
', '),f5.1,
', ',e11.4, &
6353 5923
FORMAT (
' ',2(f5.3,
', '),f5.1,
', ',e11.4, &
6355 6923
FORMAT (
' ',2(f5.3,
', '),f5.1,
', ',e11.4, &
6360 922
FORMAT (/
' Nonlinear interactions (TSA) ',a/ &
6361 ' --------------------------------------------------')
6362 923
FORMAT (
' Source term computation (1=TSA,0=FBI) : ',i2/ &
6363 ' Alternate loops (1=no,2=yes) : ',i2/ &
6364 ' (To speed up computation) ')
6365 2922
FORMAT (
' &SNL4 ITSA =',i2,
', IALT =',i2 )
6369 922
FORMAT(/
' Nonlinear interactions (GKE) ',a/ &
6370 ' --------------------------------------------------')
6371 923
FORMAT (
' Constant water depth (in meter) : ', f7.1/ &
6372 ' Quasi-resonant quartets cut-off : ', f8.2/ &
6373 ' Discretiz. of GKE (0:Con., 1:GS): ', i5/ &
6374 ' GKE (0: GS13-JFM, 1: J03-JPO) : ', i5/ &
6375 ' Interp (0: nearest, 1: bilinear): ', i5/ &
6376 ' Mixing (0: no, N: N Tm, -1: b_T): ', i5/)
6377 2922
FORMAT (
' &SNL5 NL5DPT =', f7.1,
', NL5OML =', f5.2, &
6378 ', NL5DIS =', i2.1,
', NL5KEV =', i2.1, &
6379 ', NL5IPL =', i2.1,
', NL5PMX =', i5.1,
' /')
6383 9922
FORMAT (/
' HF filter based on Snl ',a/ &
6384 ' --------------------------------------------------')
6385 9923
FORMAT (
' a34 (lambda) :',f9.3,f9.4/ &
6386 ' Prop. constant :',e10.3/ &
6387 ' maximum relative change :',f9.3/ &
6388 ' filter constants :',f8.2,2f6.2/)
6389 8922
FORMAT (
' &SNLS A34 =',f6.3,
', FHFC =',e11.4, &
6390 ', DNM =',f6.3,
','/
' FC1 =',f6.3, &
6391 ', FC2 =',f6.3,
', FC3 =',f6.3,
' /')
6395 924
FORMAT (/
' Dissipation not defined.'/)
6399 924
FORMAT (/
' Dissipation (WAM-3) ',a/ &
6400 ' --------------------------------------------------')
6401 925
FORMAT (
' Cdis :',e10.3/ &
6403 2924
FORMAT (
' &SDS1 CDIS =',e12.4,
', APM =',e11.4,
' /')
6407 924
FORMAT (/
' Dissipation (T&C 1996) ',a/ &
6408 ' --------------------------------------------------')
6409 925
FORMAT (
' High-frequency constants :',f8.2,e11.3,f6.2/ &
6410 ' Low-frequency constants :',e11.3,f6.2/&
6412 ' Minimum input peak freq. (-):',f10.4/ &
6413 ' Minimum PHI :',f10.4/)
6414 2924
FORMAT (
' &SDS2 SDSA0 =',e10.3,
', SDSA1 =',e10.3,
', SDSA2 =', &
6416 ' SDSB0 =',e10.3,
', SDSB1 =',e10.3,
', ', &
6417 'PHIMIN =',e10.3,
' /')
6421 924
FORMAT (/
' Dissipation (WAM Cycle 4+) ',a/ &
6422 ' --------------------------------------------------')
6423 925
FORMAT (
' SDSC1 :',1e11.3/ &
6424 ' Power of k in mean k :',f8.2/ &
6425 ' weights of k and k^2 :',f9.3,f6.3/)
6426 2924
FORMAT (
' &SDS3 SDSC1 =',e12.4,
', WNMEANP =',f4.2, &
6427 ', FXPM3 =', f4.2,
',FXFM3 =',f4.2,
', '/ &
6428 ' SDSDELTA1 =', f5.2,
', SDSDELTA2 =',f5.2, &
6433 924
FORMAT (/
' Dissipation (Ardhuin / Filipot / Romero ) ',a/ &
6434 ' --------------------------------------------------')
6435 925
FORMAT (
' SDSC2, SDSBCK, SDSCUM :',3e11.3/ &
6436 ' Power of k in mean k :',f8.2/)
6441 2924
FORMAT (
' &SDS4 SDSBCHOICE = ',f3.1, &
6442 ', SDSC2 =',e12.4,
', SDSCUM =',f6.2,
', '/ &
6443 ' SDSC4 =',f6.2,
', SDSC5 =',e12.4, &
6444 ', SDSC6 =',e12.4,
','/ &
6445 ' WNMEANP =',f4.2,
', FXPM3 =', f4.2, &
6446 ', FXFM3 =',f4.1,
', FXFMAGE =',f6.3,
', '/ &
6447 ' SDSBINT =',e12.4,
', SDSBCK =',e12.4, &
6448 ', SDSABK =',f6.3,
', SDSPBK =',f6.3,
', '/ &
6449 ' SDSHCK =',f5.2,
', SDSBR = ',e12.4, &
6450 ', SDSSTRAIN =',f5.1,
', SDSSTRAINA =',f4.1, &
6451 ', SDSSTRAIN2 =',f5.1,
', '/ &
6452 ' SDSBT =',f5.2,
', SDSP =',f5.2, &
6454 ', SDSCOS =',f3.1,
', SDSDTH =',f5.1,
', '/ &
6455 ' SDSBRF1 = ',f5.2,
', SDSBRFDF =',i2,
', '/ &
6456 ' SDSBM0 = ',f5.2,
', SDSBM1 =',f5.2, &
6457 ', SDSBM2 =',f5.2,
', SDSBM3 =',f5.2,
', SDSBM4 =', &
6459 ' SPMSS = ',f5.2,
', SDKOF =',f5.2, &
6460 ', SDSMWD =',f5.2,
', SDSFACMTF =',f5.1,
', '/ &
6461 ' SDSMWPOW =',f3.1,
', SDSNMTF =', f5.2, &
6462 ', SDSCUMP =', f3.1,
', CUMSIGP =', f3.1,
', SDSNUW =', e10.3,
', '/, &
6463 ' WHITECAPWIDTH =',f5.2,
' WHITECAPDUR =',f5.2,
' /')
6467 924
FORMAT (/
' Dissipation (Rogers et al. 2012) ',a/ &
6468 ' --------------------------------------------------')
6469 925
FORMAT (
' normalise by threshold spectral density : ',a/&
6470 ' normalise by spectral density : ',a/&
6471 ' coefficient and exponent for '/ &
6472 ' inherent breaking term a1, L as in (21) : ',e10.3,i3/ &
6473 ' cumulative breaking term a2, M as in (22) : ',e10.3,i3/ &
6475 2924
FORMAT (
' &SDS6 SDSET = ',l,
', SDSA1 = ',e10.3, &
6476 ', SDSA2 = ',e10.3,
', SDSP1 = ',i2,
', SDSP1 = ', &
6479 937
FORMAT (/
' Swell dissipation ',a/ &
6480 ' --------------------------------------------------')
6481 940
FORMAT (
' subroutine W3SWL6 activated : ',a/ &
6482 ' coefficient b1 ',a,
' : ',e10.3/ )
6483 2937
FORMAT (
' &SWL6 SWLB1 = ',e10.3,
', CSTB1 = ',l,
' /')
6487 926
FORMAT (/
' Bottom friction not defined.'/)
6491 926
FORMAT (/
' Bottom friction (JONSWAP) ',a/ &
6492 ' --------------------------------------------------')
6493 927
FORMAT (
' gamma :',f8.4/)
6494 2926
FORMAT (
' &SBT1 GAMMA =',e12.4,
' /')
6498 926
FORMAT (/
' Bottom friction (SHOWEX) ',a/ &
6499 ' --------------------------------------------------')
6500 927
FORMAT (
' SEDMAPD50, SED_D50_UNIFORM :',l3,1
x,f8.6/ &
6501 ' RIPFAC1,RIPFAC2,RIPFAC3,RIPFAC4 :',4f8.4/ &
6502 ' SIGDEPTH, BOTROUGHMIN, BOTROUGHFAC:',3f8.4/)
6503 2926
FORMAT (
' &SBT4 SEDMAPD50 =',l3,
', SED_D50_UNIFORM =',f8.6,
','/ &
6504 ' RIPFAC1 =',f8.4,
', RIPFAC2 =',f8.4, &
6505 ', RIPFAC3 =',f8.4,
', RIPFAC4 =',f8.4,
','/ &
6506 ' SIGDEPTH =',f8.4,
', BOTROUGHMIN =',f8.4, &
6507 ', BOTROUGHFAC =',f4.1,
' /')
6511 928
FORMAT (/
' Surf breaking not defined.'/)
6515 928
FORMAT (/
' Surf breaking (B&J 1978) ',a/ &
6516 ' --------------------------------------------------')
6517 929
FORMAT (
' alpha :',f8.3/ &
6519 2928
FORMAT (
' &SDB1 BJALFA =',f7.3,
', BJGAM =',f7.3, &
6520 ', BJFLAG = ',a,
' /')
6524 930
FORMAT (/
' Triad interactions not defined.'/)
6528 932
FORMAT (/
' Bottom scattering not defined.'/)
6531 932
FORMAT (/
' Experimental bottom scattering (F. Ardhuin).'/)
6535 935
FORMAT (/
' Dissipation via ice parameters (SIC1).'&
6536 ,/
' --------------------------------------------------')
6540 935
FORMAT (/
' Dissipation via ice parameters (SIC2).'&
6541 ,/
' --------------------------------------------------')
6545 935
FORMAT (/
' Dissipation via ice parameters (SIC3).'&
6546 ,/
' --------------------------------------------------')
6550 935
FORMAT (/
' Dissipation via ice parameters (SIC4).'&
6551 ,/
' --------------------------------------------------')
6555 935
FORMAT (/
' Dissipation via ice parameters (SIC5).'&
6556 ,/
' --------------------------------------------------')
6560 944
FORMAT (/
' Ice scattering not defined.'/)
6563 945
FORMAT (/
' Ice scattering ',a,/ &
6564 ' --------------------------------------------------')
6565 946
FORMAT (
' Isotropic (linear function of ice concentration)'/&
6566 ' slope : ',e10.3/ &
6568 2946
FORMAT (
' &SIS1 ISC1 =',e10.3,
', ISC2 =',e10.3)
6571 947
FORMAT (/
' Ice scattering ',a,/ &
6572 ' --------------------------------------------------')
6573 948
FORMAT (
' IS2 Scattering ... '/&
6574 ' scattering coefficient : ',e10.3/ &
6575 ' 0: no back-scattering : ',e10.3/ &
6576 ' TRUE: istropic back-scattering : ',l3/ &
6577 ' TRUE: update of ICEDMAX : ',l3/ &
6578 ' TRUE: keeps updated ICEDMAX : ',l3/ &
6579 ' flexural strength : ',e10.3/ &
6580 ' TRUE: uses Robinson-Palmer disp.: ',l3/ &
6581 ' attenuation : ',f5.2/ &
6582 ' fragility : ',f5.2/ &
6583 ' minimum floe size in meters : ',f5.2/ &
6584 ' pack scattering coef 1 : ',f5.2/ &
6585 ' pack scattering coef 2 : ',f5.2/ &
6586 ' scaling by concentration : ',f5.2/ &
6587 ' creep B coefficient : ',e10.3/ &
6588 ' creep C coefficient : ',f5.2/ &
6589 ' creep D coefficient : ',f5.2/ &
6590 ' creep N power : ',f5.2/ &
6591 ' elastic energy factor : ',f5.2/ &
6592 ' factor for ice breakup : ',f5.2/ &
6593 ' IS2WIM1 : ',f5.2/ &
6594 ' anelastic dissipation : ',l3/ &
6595 ' energy of activation : ',f5.2/ &
6596 ' anelastic coefficient : ',e11.3/ &
6597 ' anelastic exponent : ',f5.2)
6598 2948
FORMAT (
' &SIS2 ISC1 =',e10.3,
', IS2BACKSCAT =',e10.3, &
6599 ', IS2ISOSCAT =',l3,
', IS2BREAK =',l3, &
6600 ', IS2DUPDATE =',l3,
','/ &
6601 ' IS2FLEXSTR =',e11.3,
', IS2DISP =',l3, &
6602 ', IS2DAMP =',f3.1, &
6603 ', IS2FRAGILITY =',f4.2,
', IS2DMIN =',f5.2,
','/ &
6604 ' IS2C2 =',f12.8,
', IS2C3 =',f8.4, &
6605 ', IS2CONC =',f5.1,
', IS2CREEPB =',e11.3,
','/ &
6606 ' IS2CREEPC =',f5.2,
', IS2CREEPD =',f5.2, &
6607 ', IS2CREEPN =',f5.2,
','/ &
6608 ' IS2BREAKE =',f5.2, &
6609 ', IS2BREAKF =',f5.2,
', IS2WIM1 =',f5.2,
','/ &
6610 ', IS2ANDISB =',l3,
', IS2ANDISE =',f5.2, &
6611 ', IS2ANDISD =',e11.3,
', IS2ANDISN=',f5.2,
' /')
6614 4500
FORMAT (/
' Unresolved Obstacles Source Term (UOST) ',a,/ &
6615 ' --------------------------------------------------')
6616 4501
FORMAT (
' local alpha-beta file: ',a, &
6617 ' shadow alpha-beta file: ',a,/ &
6618 ' local calibration factor: ',f5.2, &
6619 ' shadow calibration factor: ',f5.2)
6620 4502
FORMAT (
' &UOST UOSTFILELOCAL = ',a,
', UOSTFILESHADOW = ',a,/ &
6621 ' UOSTFACTORLOCAL = ',f5.2
', UOSTFACTORSHADOW = ',f5.2,
' /')
6624 950
FORMAT (/
' Propagation scheme : '/ &
6625 ' --------------------------------------------------')
6626 951
FORMAT (
' Type of scheme (structured) :',1
x,a)
6627 2951
FORMAT (
' Type of scheme(unstructured):',1
x,a)
6628 2952
FORMAT (
' wave setup computation:',1
x,a)
6629 952
FORMAT (
' ',1
x,a)
6631 953
FORMAT (
' CFLmax depth refraction :',f9.3/)
6632 2953
FORMAT (
' &PRO1 CFLTM =',f5.2,
' /')
6636 953
FORMAT (
' CFLmax depth refraction :',f9.3/ &
6637 ' Effective swell age (h) : switched off'/ &
6638 ' Cut-off latitude (degr.) :',f7.1/)
6639 954
FORMAT (
' CFLmax depth refraction :',f9.3/ &
6640 ' Effective swell age (h) :',f8.2/ &
6641 ' Cut-off latitude (degr.) :',f7.1/)
6642 2953
FORMAT (
' &PRO2 CFLTM =',f5.2,
', DTIME =',f8.0, &
6643 ', LATMIN =',f5.1,
' /')
6647 1950
FORMAT (/
' SMC grid parameters : '/ &
6648 ' --------------------------------------------------')
6649 1951
FORMAT (
' Type of scheme (structured) :',1
x,a)
6650 1953
FORMAT (
' Max propagation CFL number :',f9.3/ &
6651 ' Effective swell age (h) :',f8.2/ &
6652 ' Maximum refraction (degr.) :',f8.2/)
6653 2954
FORMAT (
' &PSMC CFLSM =',f5.2,
', DTIMS =', f9.1/ &
6654 ' Arctic =',l5,
', RFMAXD =', f9.2/ &
6655 ' UNO3 =',l5,
', AVERG =',l5/ &
6656 ' LvSMC =',i5,
', NBISMC =',i9/ &
6657 ' ISHFT =',i5,
', JEQT =',i9/ &
6658 ' SEAWND =',l5,
'/')
6662 953
FORMAT (
' CFLmax depth refraction :',f9.3/ &
6663 ' Averaging area factor Cg :',f8.2)
6664 954
FORMAT (
' Averaging area factor theta :',f8.2)
6665 955
FORMAT ( .GE.
' **** Internal maximum ',f6.2,
' ****')
6666 2953
FORMAT (
' &PRO3 CFLTM =',f5.2, &
6667 ', WDTHCG = ',f4.2,
', WDTHTH = ',f4.2,
' /')
6670 2956
FORMAT (
' &UNST UGBCCFL =',l3,
', UGOBCAUTO =',l3, &
6671 ', UGOBCDEPTH =', f8.3,
', UGOBCFILE=',a,
','/ &
6672 ', EXPFSN =',l3,
',EXPFSPSI =',l3, &
6673 ', EXPFSFCT =', l3,
',IMPFSN =',l3,
',EXPTOTAL=',l3, &
6674 ', IMPTOTAL=',l3,
',IMPREFRACTION=', l3, &
6675 ', IMPFREQSHIFT=', l3,
', IMPSOURCE=', l3, &
6676 ', SETUP_APPLY_WLV=', l3, &
6677 ', JGS_TERMINATE_MAXITER=', l3, &
6678 ', JGS_TERMINATE_DIFFERENCE=', l3, &
6679 ', JGS_TERMINATE_NORM=', l3, &
6680 ', JGS_LIMITER=', l3, &
6681 ', JGS_LIMITER_FUNC=', i3, &
6682 ', JGS_USE_JACOBI=', l3, &
6683 ', JGS_BLOCK_GAUSS_SEIDEL=', l3, &
6684 ', JGS_MAXITER=', i5, &
6685 ', JGS_PMIN=', f8.3, &
6686 ', JGS_DIFF_THR=', f8.3, &
6687 ', JGS_NORM_THR=', f8.3, &
6688 ', JGS_NLEVEL=', i3, &
6689 ', JGS_SOURCE_NONLINEAR=', l3 / )
6691 960
FORMAT (/
' Miscellaneous ',a/ &
6692 ' --------------------------------------------------')
6693 2961
FORMAT (
' *** WAVEWATCH-III WARNING IN W3GRID :'/ &
6694 .NE.
' CICE0CICEN requires FLAGTR>2'/ &
6695 ' Parameters corrected: CICE0 = CICEN'/)
6696 2962
FORMAT (/
' *** WAVEWATCH-III WARNING IN W3GRID : User requests', &
6697 'CICE0=CICEN corresponding to discontinuous treatment of ', &
6698 'ice, so we will change FLAGTR')
6699 2963
FORMAT (/
' *** WAVEWATCH-III WARNING IN W3GRID :'/ &
6700 ' Ice physics used, so we will change FLAGTR.')
6701 961
FORMAT (
' Ice concentration cut-offs :',f8.2,f6.2)
6703 962
FORMAT (
' Moving grid GSE cor. power :',f8.2)
6706 963
FORMAT(
' Grid offset for multi-grid w/SCRIP : ',e11.3)
6708 1972
FORMAT (
' Compression of track output : ',l3)
6710 964
FORMAT (
' Xseed in seeding algorithm :',f8.2)
6712 965
FORMAT (/
' Dynamic source term integration scheme :'/ &
6715 ' Xfilt (-) :',f9.3)
6716 966
FORMAT (/
' Wave field partitioning :'/ &
6717 ' Levels (-) :',i5/ &
6718 ' Minimum wave height (m) :',f9.3/ &
6719 ' Wind area multiplier (-) :',f9.3/ &
6720 ' Cut-off wind sea fract. (-) :',f9.3/ &
6721 ' Combine wind seas : ',a/ &
6722 ' Number of swells in fld out :',i5)
6723 967
FORMAT (/
' Miche-style limiting wave height :'/ &
6724 ' Hs,max/d factor (-) :',f9.3/ &
6725 ' Hrms,max/d factor (-) :',f9.3/ &
6726 ' Limiter activated : ',a)
6727 968
FORMAT (
' *** FACTOR DANGEROUSLY LOW ***')
6728 1973
FORMAT (/
' Calendar type : ',a)
6731 969
FORMAT (/
' Shoreline reflection ',a/ &
6732 ' --------------------------------------------------')
6736 970
FORMAT (/
' Second order and infragravity waves ',a/ &
6737 ' --------------------------------------------------')
6740 5971
FORMAT (
' Partitioning method : ',a)
6741 5972
FORMAT (
' Namelist options overridden : ',a)
6744 971
FORMAT (/
' Boundary layer below ice ',a/ &
6745 ' --------------------------------------------------')
6748 971
FORMAT (/
' Visco-elastic ice layer ',a/ &
6749 ' --------------------------------------------------')
6752 971
FORMAT (/
' Empirical wave-ice physics ',a/ &
6753 ' --------------------------------------------------')
6756 971
FORMAT (/
' Effective medium ice model (SIC5) ',a/ &
6757 ' --------------------------------------------------')
6758 2971
FORMAT (
' Min. Ice shear modulus G : ', e10.1/, &
6759 ' Min. Wave period T : ', f7.2/, &
6760 ' Max. Wavenumber Ratio (Ko/Kr): ', e10.1/, &
6761 ' Max. Attenu. Rate (Ki) : ', e10.1/, &
6762 ' Min. Water depth (d) : ', f5.0/, &
6763 ' Max. # of Newton Iter. : ', f5.0/, &
6764 ' Use Rand. Kick : ', f5.0/, &
6765 ' Excluded Imag. Corridor : ', f9.4/, &
6766 ' Selected ice model : ', a/)
6769 8972
FORMAT (
' Wind input reduction factor in presence of ', &
6771 /
' (0.0==> no reduction and 1.0==> no wind', &
6772 /
' input with 100% ice cover)')
6775 4970
FORMAT (/
' Spectral output on full grid ',a/ &
6776 ' --------------------------------------------------')
6777 4971
FORMAT (
' Second order pressure at K=0:',3i4)
6778 4972
FORMAT (
' Spectrum of Uss :',3i4)
6779 4973
FORMAT (
' Frequency spectrum :',3i4)
6780 4974
FORMAT (
' Partions of Uss :',2i4)
6781 4975
FORMAT (
' Partition wavenumber #',i2,
' : ',1f6.3)
6784 4980
FORMAT (/
' Coastal / iceberg reflection ',a/ &
6785 ' --------------------------------------------------')
6786 4981
FORMAT (
' Coefficient for shorelines :',f6.4)
6787 4989
FORMAT (
' *** CURVLINEAR GRID: REFLECTION NOT IMPLEMENTED YET ***')
6788 2977
FORMAT (
' &SIG1 IGMETHOD =',i2,
', IGADDOUTP =',i2,
', IGSOURCE =',i2, &
6789 ', IGSTERMS = ',i2,
', IGBCOVERWRITE =', l3,
','/ &
6790 ' IGSWELLMAX =', l3,
', IGMAXFREQ =',f6.4, &
6791 ', IGSOURCEATBP = ',i2,
', IGKDMIN = ',f6.4,
','/ &
6792 ' IGFIXEDDEPTH = ',f6.2,
', IGEMPIRICAL = ',f8.6,
' /')
6794 2978
FORMAT (
' &SIC2 IC2DISPER =',l3,
', IC2TURB =',f6.2, &
6795 ', IC2ROUGH =',f10.6,
','/ &
6796 ' IC2REYNOLDS = ',f10.1,
', IC2SMOOTH = ',f10.1, &
6797 ', IC2VISC =',f6.3,
','/ &
6798 ', IC2TURBS =',f8.2,
', IC2DMAX =',f5.3,
' /')
6800 2979
FORMAT (
' &SIC3 IC3MAXTHK =',f6.2,
', IC3MAXCNC =',f6.2,
','/ &
6801 ' IC2TURB =',f8.2, &
6802 ', IC2ROUGH =',f7.3,
','/ &
6803 ' IC2REYNOLDS = ',f10.1,
', IC2SMOOTH = ',f10.1, &
6804 ', IC2VISC =',f10.3,
','/ &
6805 ' IC2TURBS =',f8.2,
', IC3CHENG =',l3, &
6806 ', USECGICE =',l3,
', IC3HILIM = ',f6.2,
','/ &
6807 ' IC3KILIM = ',e9.2,
', IC3HICE = ',e9.2, &
6808 ', IC3VISC = ',e9.2,
','/ &
6809 ' IC3DENS = ',e9.2,
', IC3ELAS = ',e9.2,
' /')
6811 2981
FORMAT (
' &SIC5 IC5MINIG = ', e9.2,
', IC5MINWT = ', f5.2, &
6812 ', IC5MAXKRATIO = ', e9.2,
','/ &
6813 ' IC5MAXKI = ', e9.2,
', IC5MINHW = ', f4.0, &
6814 ', IC5MAXITER = ', f4.0,
','/ &
6815 ' IC5RKICK = ', f2.0,
', IC5KFILTER = ', f7.4, &
6816 ', IC5VEMOD = ', f4.0,
' /')
6818 2966
FORMAT (
' &MISC CICE0 =',f6.3,
', CICEN =',f6.3, &
6819 ', LICE = ',f8.1,
', PMOVE =',f6.3,
','/ &
6820 ' XSEED =',f6.3,
', FLAGTR = ', i1, &
6821 ', XP =',f6.3,
', XR =',f6.3,
', XFILT =', f6.3 / &
6822 ' IHM =',i5,
', HSPM =',f6.3,
', WSM =',f6.3, &
6823 ', WSC =',f6.3,
', FLC = ',a/ &
6824 ' NOSW =',i3,
', FMICHE =',f6.3,
', RWNDC =' , &
6825 f6.3,
', WCOR1 =',f6.2,
', WCOR2 =',f6.2,
','/ &
6826 ' FACBERG =',f4.1,
', GSHIFT = ',e11.3, &
6827 ', STDX = ' ,f7.2,
', STDY =',f7.2,
','/ &
6829 ', ICEHMIN =',f5.2,
', ICEHFAC =',f5.2,
','/ &
6830 ' ICEHINIT =',f5.2,
', ICEDISP =',l3, &
6831 ', ICEHDISP =',f5.2,
','/ &
6832 ' ICESLN = ',f6.2,
', ICEWIND = ',f6.2, &
6833 ', ICESNL = ',f6.2,
', ICESDS = ',f5.2,
','/ &
6834 ' ICEDDISP = ',f5.2,
', ICEFDISP = ',f5.2, &
6835 ', CALTYPE = ',a8,
' , TRCKCMPR = ', l3,
','/ &
6836 ' BTBET = ', f6.2,
' /')
6838 2976
FORMAT (
' &OUTS P2SF =',i2,
', I1P2SF =',i2,
', I2P2SF =',i3,
','/&
6839 ' US3D =',i2,
', I1US3D =',i3,
', I2US3D =',i3,
','/&
6840 ' USSP =',i2,
', IUSSP =',i3,
','/&
6841 ' E3D =',i2,
', I1E3D =',i3,
', I2E3D =',i3,
','/&
6842 ' TH1MF =',i2,
', I1TH1M =',i3,
', I2TH1M =',i3,
','/&
6843 ' STH1MF=',i2,
', I1STH1M=',i3,
', I2STH1M=',i3,
','/&
6844 ' TH2MF =',i2,
', I1TH2M =',i3,
', I2TH2M =',i3,
','/&
6845 ' STH2MF=',i2,
', I1STH2M=',i3,
', I2STH2M=',i3,
' /')
6847 2986
FORMAT (
' &REF1 REFCOAST =',f5.2,
', REFFREQ =',f5.2,
', REFSLOPE =',f5.3, &
6848 ', REFMAP =',f4.1,
', REFMAPD =',f4.1,
', REFSUBGRID =',f5.2,
','/ &
6849 ' REFRMAX=',f5.2,
', REFFREQPOW =',f5.2, &
6850 ', REFICEBERG =',f5.2,
', REFCOSP_STRAIGHT =',f4.1,
' /')
6852 2987
FORMAT (
' &FLD TAIL_ID =',i1,
' TAIL_LEV =',f5.4,
' TAILT1 =',f5.3,&
6853 ' TAILT2 =',f5.3,
' /')
6856 4991
FORMAT (
' &ROTD PLAT =', f6.2,
', PLON =', f7.2,
', UNROT =',l3,
' /')
6857 4992
FORMAT (
' &ROTB BPLAT =',9(f6.1,
",")/ &
6858 ' BPLON =',9(f6.1,
","),
' /')
6861 3000
FORMAT (/
' The spatial grid: '/ &
6862 ' --------------------------------------------------'/ &
6864 3001
FORMAT (
' Coordinate system : ',a)
6865 3002
FORMAT (
' Index closure type : ',a)
6866 3003
FORMAT (
' Dimensions : ',i6,i8)
6867 3004
FORMAT (/
' Increments (deg.) :',2f10.4/ &
6868 ' Longitude range (deg.) :',2f10.4/ &
6869 ' Latitude range (deg.) :',2f10.4)
6870 3005
FORMAT (
' Increments (km) :',2f8.2/ &
6871 ' X range (km) :',2f8.2/ &
6872 ' Y range (km) :',2f8.2)
6873 3006
FORMAT (/
' X-coordinate unit :',i6/ &
6874 ' Scale factor :',f10.4/ &
6875 ' Add offset :',e12.4/ &
6876 ' Layout indicator :',i6/ &
6877 ' Format indicator :',i6)
6878 3007
FORMAT (/
' Y-coordinate unit :',i6/ &
6879 ' Scale factor :',f10.4/ &
6880 ' Add offset :',e12.4/ &
6881 ' Layout indicator :',i6/ &
6882 ' Format indicator :',i6)
6883 3008
FORMAT (
' Format : ',a)
6884 3009
FORMAT (
' File name : ',a)
6886 4001
FORMAT (
' SMC refined levels NRLv = ',i8)
6887 4002
FORMAT (
' SMC Equator j shift no. = ',i8)
6888 4302
FORMAT (
' SMC I-index shift number = ',i8)
6889 4003
FORMAT (
' SMC input boundary no. = ',i8)
6890 4004
FORMAT (
' SMC NCel = ',6i9)
6891 4005
FORMAT (
' IJKCel(5,NCel) read from ', a)
6893 4007
FORMAT (
' SMC NUFc = ',6i9)
6894 4008
FORMAT (
' IJKUFc(7,NCel) read from ', a)
6896 4010
FORMAT (
' SMC NVFc = ',6i9)
6897 4011
FORMAT (
' IJKVFc(8,NCel) read from ', a)
6898 4110
FORMAT (
' SMC NCObsr = ',6i9)
6899 4111
FORMAT (
' IJKObstr(1,NCel) read from ', a)
6901 4013
FORMAT (
' NBICelin(NBISMC) read from ', a)
6903 4015
FORMAT (
' ARC NARC = ',6i9)
6904 4016
FORMAT (
' IJKCel(5,NARC) read from ', a)
6905 4017
FORMAT (
' ARC NAUI = ',6i9)
6906 4018
FORMAT (
' IJKUFc(7,NAUI) read from ', a)
6907 4019
FORMAT (
' ARC NAVJ = ',6i9)
6908 4020
FORMAT (
' IJKVFc(8,NAVJ) read from ', a)
6909 4021
FORMAT (
' Varables by W3DIMX NCel = ',i9)
6910 4022
FORMAT (
' Defined NLvCel ',6i9)
6911 4023
FORMAT (
' Defined NLvUFc ',6i9)
6912 4024
FORMAT (
' Defined NLvVFc ',6i9)
6913 4025
FORMAT (
' Define IJKCel from -9 to ',i9)
6914 4026
FORMAT (
' IJKCel(5,NCel) defined : ')
6915 4027
FORMAT (
' IJKUFc(7,NUFc) defined : ')
6916 4028
FORMAT (
' IJKVFc(8,NVFc) defined : ')
6917 4029
FORMAT (
' Boundary cells IJKCel(:,-9:0) : ')
6919 4031
FORMAT (
' Define MAPSF ... 1 to ',i9)
6920 4032
FORMAT (
' Multi-Resolution factor = ',i6)
6921 4033
FORMAT (
' Range of MAPSF(:,1) : ',2i9)
6922 4034
FORMAT (
' Range of MAPSF(:,2) : ',2i9)
6923 4035
FORMAT (
' Range of MAPSF(:,3) : ',2i9)
6924 4036
FORMAT (
' Range of MAPFS(:,:) : ',2i9)
6925 4037
FORMAT (
' Arctic AngArc defined as ',i6)
6927 4039
FORMAT (
' Arctic ICLBAC defined as ',i6)
6931 4200
FORMAT (
' AnglDin(NX,NY) defn checks : ')
6932 4201
FORMAT (
' JY/IX',4i8)
6933 4202
FORMAT (i12,4f8.2)
6934 4203
FORMAT (
' Rotated pole lat/lon (deg.) : ',2f9.3)
6935 4204
FORMAT (
' Output dirns and x-y vectors will be set to True North')
6937 972
FORMAT (/
' Bottom level unit :',i6/ &
6938 ' Limiting depth (m) :',f8.2/ &
6939 ' Minimum depth (m) :',f8.2/ &
6940 ' Scale factor :',f8.2/ &
6941 ' Layout indicator :',i6/ &
6942 ' Format indicator :',i6)
6943 973
FORMAT (
' Format : ',a)
6944 974
FORMAT (
' File name : ',a)
6945 976
FORMAT (/
' Sub-grid information : ',a)
6946 977
FORMAT (
' Obstructions unit :',i6/ &
6947 ' Scale factor :',f10.4/ &
6948 ' Layout indicator :',i6/ &
6949 ' Format indicator :',i6)
6950 978
FORMAT (/
' Mask information : From file.'/ &
6951 ' Mask unit :',i6/ &
6952 ' Layout indicator :',i6/ &
6953 ' Format indicator :',i6)
6954 1977
FORMAT (
' Shoreline slope :',i6/ &
6955 ' Scale factor :',f10.4/ &
6956 ' Layout indicator :',i6/ &
6957 ' Format indicator :',i6)
6958 1978
FORMAT (
' Grain sizes :',i6/ &
6959 ' Scale factor :',f10.4/ &
6960 ' Layout indicator :',i6/ &
6961 ' Format indicator :',i6)
6963 979
FORMAT (
' Processing ',a)
6964 980
FORMAT (/
' Input boundary points : '/ &
6965 ' --------------------------------------------------')
6966 1980
FORMAT (/
' Excluded points : '/ &
6967 ' --------------------------------------------------')
6968 981
FORMAT (
' *** POINT OUTSIDE GRID (SKIPPED), IX, IY =')
6969 1981
FORMAT (
' *** POINT ALREADY EXCLUDED (SKIPPED), IX, IY =')
6970 982
FORMAT (
' *** CANNOT CONNECT POINTS, IX, IY =')
6971 985
FORMAT (
' No boundary points.'/)
6972 986
FORMAT (
' Number of boundary points :',i6/)
6973 1985
FORMAT (
' No excluded points.'/)
6974 1986
FORMAT (
' Number of excluded points :',i6/)
6975 987
FORMAT (
' Nr.| IX | IY | Long. | Lat. '/ &
6976 ' -----|-------|-------|---------|---------')
6977 1987
FORMAT (
' Nr.| IX | IY | X | Y '/ &
6978 ' -----|-------|-------|-----------|-----------')
6979 988
FORMAT (
' ',i4,2(
' |',i6),2(
' |',f8.2))
6980 1988
FORMAT (
' ',i4,2(
' |',i6),2(
' |',f8.1,
'E3'))
6983 990
FORMAT (/
' Output boundary points : '/ &
6984 ' --------------------------------------------------')
6985 991
FORMAT (
' File nest',i1,
'.ww3 Number of points :',i6/ &
6986 ' Number of spectra :',i6)
6987 1991
FORMAT (
' Dest. grid Polat:',f6.2,
', Polon:',f8.2)
6988 992
FORMAT (/
' Nr.| Long. | Lat. '/ &
6989 ' -----|---------|---------')
6990 1992
FORMAT (/
' Nr.| Long. | Lat. ', &
6991 ' Nr.| Long. | Lat. '/ &
6992 ' -----|---------|---------', &
6993 ' -----|---------|---------')
6994 993
FORMAT (
' ',i4,2(
' |',f8.2))
6995 1993
FORMAT (
' ',i4,2(
' |',f8.2), &
6996 ' ',i4,2(
' |',f8.2))
6997 994
FORMAT (
' *** POINT OUTSIDE GRID (SKIPPED) : X,Y =',2f10.5)
6998 995
FORMAT (
' *** POINT ON LAND (SKIPPED) : X,Y =',2f10.5)
6999 2992
FORMAT (/
' Nr.| X | Y '/ &
7000 ' -----|-----------|-----------')
7001 3992
FORMAT (/
' Nr.| X | Y ', &
7003 ' -----|-----------|-----------', &
7004 ' -----|-----------|-----------')
7005 2993
FORMAT (
' ',i4,2(
' |',f8.1,
'E3'))
7006 3993
FORMAT (
' ',i4,2(
' |',f8.1,
'E3'), &
7007 ' ',i4,2(
' |',f8.1,
'E3'))
7008 2994
FORMAT (
' *** POINT OUTSIDE GRID (SKIPPED) : X,Y =',2(f8.1,
'E3'))
7009 2995
FORMAT (
' *** POINT ON LAND (SKIPPED) : X,Y =',2(f8.1,
'E3'))
7010 996
FORMAT (
' No boundary points.'/)
7011 997
FORMAT (
' Number of boundary points :',i6/ &
7012 ' Number of spectra :',i6/)
7021 999
FORMAT (/
' Writing model definition file ...'/)
7023 1000
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID : '/ &
7024 ' ERROR IN OPENING INPUT FILE'/ &
7027 1001
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID : '/ &
7028 ' PREMATURE END OF INPUT FILE'/)
7030 1002
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID : '/ &
7031 ' ERROR IN READING FROM INPUT FILE'/ &
7034 1003
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID : '/ &
7035 ' INVALID CALENDAR TYPE: SELECT ONE OF:', &
7036 ' standard, 360_day, or 365_day '/)
7038 1004
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID : '/ &
7039 ' CANNOT READ UNFORMATTED (IDFM = 3) FROM UNIT', &
7040 i4,
' (ww3_grid.inp)'/)
7042 1005
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID : '/ &
7043 ' BOTTOM AND OBSTRUCTION DATA FROM SAME FILE '/ &
7044 ' BUT WITH INCOMPATIBLE FORMATS (',i1,
',',i1,
')'/)
7046 1006
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7047 ' TOO MANY NESTING OUTPUT FILES '/)
7049 1007
FORMAT (/
' *** WAVEWATCH-III ERROR IN W3GRID :'/ &
7050 ' ILLEGAL GRID TYPE:',a4)
7052 1008
FORMAT (/
' *** WAVEWATCH-III ERROR IN W3GRID :'/ &
7053 ' A CARTESIAN WITH CLOSURE IS NOT ALLOWED')
7055 1009
FORMAT (/
' *** WAVEWATCH-III ERROR IN W3GRID :'/ &
7056 ' A RECTILINEAR TRIPOLE GRID IS NOT ALLOWED')
7058 1010
FORMAT (/
' *** WAVEWATCH-III ERROR IN W3GRID :'// &
7059 ' NO PROPAGATION + NO SOURCE TERMS = NO WAVE MODEL'// &
7060 ' ( USE DRY RUN FLAG TO TEMPORARILY SWITCH OFF ', &
7063 1011
FORMAT (/
' *** WAVEWATCH-III WARNING IN W3GRID :'/ &
7064 ' LEFT-HANDED GRID -- POSSIBLE CAUSE IS WRONG '/ &
7065 ' IDLA:',i4,
' . THIS MAY PRODUCE ERRORS '/ &
7066 ' (COMMENT THIS EXTCDE AT YOUR OWN RISK).')
7068 1012
FORMAT (/
' *** WAVEWATCH-III ERROR IN W3GRID :'/ &
7069 ' ILLEGAL GRID CLOSURE TYPE:',a4)
7071 1013
FORMAT (/
' *** WAVEWATCH-III WARNING IN W3GRID :'/ &
7072 ' THE GLOBAL (LOGICAL) INPUT FLAG IS DEPRECATED'/ &
7073 ' AND REPLACED WITH A STRING INDICATING THE TYPE'/ &
7074 ' OF GRID INDEX CLOSURE (NONE, SMPL or TRPL).'/ &
7075 ' *** PLEASE UPDATE YOUR GRID INPUT FILE ACCORDINGLY ***'/)
7078 1014
FORMAT (/
' *** WAVEWATCH-III ERROR IN W3GRID :'/ &
7079 ' SMC CELL LONGITUDE RANGE OUTSIDE BASE GRID RANGE:'/&
7080 ' ISEA =', i6,
'; IX =', i4,
':', i4,
'; NX =', i4/)
7081 1015
FORMAT (/
' *** WAVEWATCH-III ERROR IN W3GRID :'/ &
7082 ' SMC CELL LATITUDE RANGE OUTSIDE BASE GRID RANGE: '/&
7083 ' ISEA =', i6,
'; IY =', i4,
':', i4,
'; NY =', i4/)
7086 1020
FORMAT (/
' *** WAVEWATCH-III ERROR IN W3GRID :'/ &
7087 ' SOURCE TERMS REQUESTED BUT NOT SELECTED'/)
7088 1021
FORMAT (/
' *** WAVEWATCH III WARNING IN W3GRID :'/ &
7089 ' SOURCE TERMS SELECTED BUT NOT REQUESTED'/)
7090 1022
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7091 ' ILLEGAL NUMBER OF !/LNn OR SEED SWITCHES :',i3)
7092 1023
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7093 ' ILLEGAL NUMBER OF !/STn SWITCHES :',i3)
7094 1024
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7095 ' ILLEGAL NUMBER OF !/NLn SWITCHES :',i3)
7096 1025
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7097 ' ILLEGAL NUMBER OF !/BTn SWITCHES :',i3)
7098 1026
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7099 ' ILLEGAL NUMBER OF !/DBn SWITCHES :',i3)
7100 1027
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7101 ' ILLEGAL NUMBER OF !/TRn SWITCHES :',i3)
7102 1028
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7103 ' ILLEGAL NUMBER OF !/BSn SWITCHES :',i3)
7105 1030
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7106 ' PROPAGATION REQUESTED BUT NO SCHEME SELECTED '/)
7107 1031
FORMAT (/
' *** WAVEWATCH III WARNING IN W3GRID :'/ &
7108 ' NO PROPAGATION REQUESTED BUT SCHEME SELECTED '/)
7109 1032
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7110 ' NO PROPAGATION SCHEME SELECTED ( use !/PR0 ) '/)
7111 1033
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7112 ' MULTIPLE PROPAGATION SCHEMES SELECTED :',i3/ &
7113 ' CHECK !/PRn SWITCHES'/)
7114 1034
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7115 ' ILLEGAL NUMBER OF !/ICn SWITCHES :',i3)
7116 1035
FORMAT (/
' *** WAVEWATCH III WARNING IN W3GRID :'/ &
7117 ' ONLY FIRST PROPAGATION SCHEME WILL BE USED: ')
7118 1036
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7119 ' ILLEGAL NUMBER OF !/ISn SWITCHES :',i3)
7121 1052
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7122 ' WITH NAMELIST VALUE PLAT == 90, PLON MUST BE -180'/ &
7123 ' AND UNROT MUST BE .FALSE.' )
7124 1053
FORMAT (/
' *** WAVEWATCH III ERROR IN W3GRID :'/ &
7125 ' WITH NAMELIST VALUE BPLAT == 90, BPLON MUST BE -180')
7128 1040
FORMAT (
' Space-time extremes DX :',f10.2)
7129 1041
FORMAT (
' Space-time extremes DX :',f10.2)
7130 1042
FORMAT (
' Space-time extremes DX-Y set to default 1000 m')
7131 1043
FORMAT (
' Space-time extremes Dt :',f8.2)
7132 1044
FORMAT (
' Space-time extremes Dt set to default 1200 s')
7134 1100
FORMAT (/
' Status map, printed in',i6,
' part(s) '/ &
7135 ' -----------------------------------'/)
7136 1101
FORMAT (2
x,180i2)
7137 1102
FORMAT (
' Legend : '/ &
7138 ' -----------------------------'/ &
7139 ' 0 : Land point '/ &
7140 ' 1 : Sea point '/ &
7141 ' 2 : Active boundary point '/ &
7142 ' 3 : Excluded point '/)
7143 1103
FORMAT (/
' Obstruction map ',a1,
', printed in',i6,
' part(s) '/ &
7144 ' ---------------------------------------------'/)
7145 1104
FORMAT (
' Legend : '/ &
7146 ' --------------------------------'/ &
7147 ' fraction of obstruction * 10 '/)
7149 1105
FORMAT (/
' Shoreline slope, printed in',i6,
' part(s) '/ &
7150 ' ---------------------------------------------'/)
7151 1106
FORMAT (
' Legend : '/ &
7152 ' --------------------------------'/ &
7156 1150
FORMAT (/
' Reading unstructured grid definition files ...'/)
7158 9997
FORMAT (/
' Summary grid statistics : '/ &
7159 ' --------------------------------------------------'/ &
7160 ' Number of longitudes :',i10/ &
7161 ' Number of latitudes :',i10/ &
7162 ' Number of grid points :',i10/ &
7163 ' Number of sea points :',i10,
' (',f4.1,
'%)'/&
7164 ' Number of input b. points :',i10/ &
7165 ' Number of land points :',i10/ &
7166 ' Number of excluded points :',i10/)
7167 9998
FORMAT (/
' Summary grid statistics : '/ &
7168 ' --------------------------------------------------'/ &
7169 ' Number of longitudes :',i10/ &
7170 ' Number of latitudes :',i10/ &
7171 ' Number of grid points :',i10/ &
7172 ' Number of sea points :',i10,
' (100%)'/ &
7173 ' Number of input b. points :',i10/ &
7174 ' Number of land points :',i10/ &
7175 ' Number of excluded points :',i10/)
7176 9999
FORMAT (/
' End of program '/ &
7177 ' ========================================'/ &
7178 ' WAVEWATCH III Grid preprocessor '/)
7181 9090
FORMAT (
' TEST W3GRID : OUTPUT BOUND. POINT DATA LINE SEG.')
7182 9091
FORMAT (
' ',2f8.2,4(2i4,f7.2))
7183 9092
FORMAT (
' ',f7.2,2
x,4f7.2)
7184 9093
FORMAT (
' ',4i7/ &
7189 9095
FORMAT (
' TEST W3GRID : OUTPUT BOUND. POINT SPEC DATA ')
7190 9096
FORMAT (
' ',i3,2i8)
7198 SUBROUTINE readnl ( NDS, NAME, STATUS )
7250 INTEGER,
INTENT(IN) :: NDS
7251 CHARACTER,
INTENT(IN) :: NAME*4
7252 CHARACTER,
INTENT(OUT) :: STATUS*20
7257 INTEGER :: IERR, I, J
7258 CHARACTER :: LINE*80
7263 CALL strace (
ient,
'READNL')
7267 status =
'(default values) : '
7270 READ (nds,
'(A)',
END=800,ERR=800,IOSTAT=IERR)
line
7272 IF (
line(
i:
i) .NE.
' ' )
THEN
7273 IF (
line(
i:
i) .EQ.
'&' )
THEN
7274 IF (
line(
i+1:
i+4) .EQ. name )
THEN
7279 READ (nds,nml=fld1,
END=801,ERR=802,IOSTAT=J)
7283 READ (nds,nml=fld2,
END=801,ERR=802,IOSTAT=J)
7287 READ (nds,nml=flx3,
END=801,ERR=802,IOSTAT=J)
7291 READ (nds,nml=flx4,
END=801,ERR=802,IOSTAT=J)
7295 READ (nds,nml=sln1,
END=801,ERR=802,IOSTAT=J)
7299 READ (nds,nml=sin1,
END=801,ERR=802,IOSTAT=J)
7303 READ (nds,nml=sin2,
END=801,ERR=802,IOSTAT=J)
7307 READ (nds,nml=sin3,
END=801,ERR=802,IOSTAT=J)
7311 READ (nds,nml=sin4,
END=801,ERR=802,IOSTAT=J)
7315 READ (nds,nml=sin6,
END=801,ERR=802,IOSTAT=J)
7319 READ (nds,nml=snl1,
END=801,ERR=802,IOSTAT=J)
7323 READ (nds,nml=snl2,
END=801,ERR=802,IOSTAT=J)
7325 IF (
ndepth .GT. 100 )
GOTO 804
7327 READ (nds,nml=anl2,
END=801,ERR=802,IOSTAT=J)
7332 READ (nds,nml=snl3,
END=801,ERR=802,IOSTAT=J)
7334 IF (
nqdef .GT. 100 )
GOTO 804
7335 READ (nds,nml=anl3,
END=801,ERR=802,IOSTAT=J)
7339 READ (nds,nml=snl4,
END=801,ERR=802,IOSTAT=J)
7343 READ (nds,nml=snl5,
END=801,ERR=802,IOSTAT=J)
7347 READ (nds,nml=snls,
END=801,ERR=802,IOSTAT=J)
7351 READ (nds,nml=sds1,
END=801,ERR=802,IOSTAT=J)
7355 READ (nds,nml=sds2,
END=801,ERR=802,IOSTAT=J)
7359 READ (nds,nml=sds3,
END=801,ERR=802,IOSTAT=J)
7363 READ (nds,nml=sds4,
END=801,ERR=802,IOSTAT=J)
7367 READ (nds,nml=sds6,
END=801,ERR=802,IOSTAT=J)
7369 READ (nds,nml=swl6,
END=801,ERR=802,IOSTAT=J)
7373 READ (nds,nml=sbt1,
END=801,ERR=802,IOSTAT=J)
7377 READ (nds,nml=sbt4,
END=801,ERR=802,IOSTAT=J)
7381 READ (nds,nml=sis1,
END=801,ERR=802,IOSTAT=J)
7385 READ (nds,nml=sis2,
END=801,ERR=802,IOSTAT=J)
7389 READ (nds,nml=sdb1,
END=801,ERR=802,IOSTAT=J)
7393 READ (nds,nml=uost,
END=801,ERR=802,IOSTAT=J)
7397 READ (nds,nml=pro1,
END=801,ERR=802,IOSTAT=J)
7401 READ (nds,nml=pro2,
END=801,ERR=802,IOSTAT=J)
7405 READ (nds,nml=psmc,
END=801,ERR=802,IOSTAT=J)
7409 READ (nds,nml=pro3,
END=801,ERR=802,IOSTAT=J)
7413 READ (nds,nml=rotd,
END=801,ERR=802,IOSTAT=J)
7415 READ (nds,nml=rotb,
END=801,ERR=802,IOSTAT=J)
7419 READ (nds,nml=ref1,
END=801,ERR=802,IOSTAT=J)
7423 READ (nds,nml=sig1,
END=801,ERR=802,IOSTAT=J)
7427 READ (nds,nml=sic2,
END=801,ERR=802,IOSTAT=J)
7431 READ (nds,nml=sic3,
END=801,ERR=802,IOSTAT=J)
7435 READ (nds,nml=sic4,
END=801,ERR=802,IOSTAT=J)
7439 READ (nds,nml=sic5,
END=801,ERR=802,IOSTAT=J)
7442 READ (nds,nml=unst,
END=801,ERR=802,IOSTAT=J)
7444 READ (nds,nml=outs,
END=801,ERR=802,IOSTAT=J)
7446 READ (nds,nml=misc,
END=801,ERR=802,IOSTAT=J)
7450 status =
'(user def. values) :'
7464 WRITE (ndse,1001) name
7469 WRITE (ndse,1002) name,
j
7474 WRITE (ndse,1003) name
7487 WRITE (ndse,1004)
nqdef
7494 1001
FORMAT (/
' *** WAVEWATCH III ERROR IN READNL : '/ &
7495 ' PREMATURE END OF FILE IN READING ',a/)
7496 1002
FORMAT (/
' *** WAVEWATCH III ERROR IN READNL : '/ &
7497 ' ERROR IN READING ',a,
' IOSTAT =',i8/)
7498 1003
FORMAT (/
' *** WAVEWATCH III ERROR IN READNL : '/ &
7499 ' NAMELIST NAME ',a,
' NOT RECOGNIZED'/)
7501 1004
FORMAT (/
' *** WAVEWATCH III ERROR IN READNL : '/ &
7502 .LE.
' TEMP DEPTH ARRAY TOO SMALL, ',i8/)
7505 1004
FORMAT (/
' *** WAVEWATCH-III ERROR IN READNL : '/ &
7506 .LE.
' TEMP QPARMS ARRAY TOO SMALL, ',i8/)