225 iceo, iceho, icefo,
dimp
227 USE w3odatmd,
ONLY: tauao, taudo, dairo
247 INTEGER :: ndsi, ndsm, ndsop, ndstrc, ntrace, &
248 ierr, i, tout(2), nout, tdum(2), &
249 nreq, ipoint, itype, otype, ndstab, &
250 iotest, ik, ith, iout, j, dimxp, &
251 ndsbul, ndscsv, icsv, ij
255 INTEGER :: iscale = 0
261 INTEGER,
SAVE :: ient = 0
263 REAL :: dtreq, scale1, scale2, dtest
265 REAL,
ALLOCATABLE :: xpart(:,:)
266 LOGICAL :: flform, flsrce(7)
267 LOGICAL,
ALLOCATABLE :: flreq(:)
268 CHARACTER :: comstr*1, idtime*23, iddday*11, &
270 CHARACTER(LEN=25) :: idsrce(7)
271 CHARACTER :: hstr*6, htype*3
275 DATA idsrce /
'Spectrum ' , &
276 'Wind-wave interactions ' , &
277 'Nonlinear interactions ' , &
279 'Wave-bottom interactions ' , &
280 'Wave-ice interactions ' , &
281 'Sum of selected sources ' /
294 CALL w3setw ( 1, 6, 6 )
300 CALL w3seto ( 1, 6, 6 )
312 CALL itrace ( ndstrc, ntrace )
316 CALL strace (ient,
'W3OUTP')
340 OPEN (ndsi,
file=fnmpre(:j)//
'ww3_outp.inp',status=
'OLD', &
342 READ (ndsi,
'(A)',
END=801,ERR=802) comstr
343 IF (comstr.EQ.
' ') comstr =
'$'
344 WRITE (ndso,901) comstr
349 CALL w3iogr (
'READ', ndsm )
350 WRITE (ndso,920) gname
358 dimxp = ((nk+1)/2) * ((nth-1)/2)
359 ALLOCATE ( xpart(dimp,0:dimxp) )
366 CALL w3iopon (
'READ', ndsop, iotest )
368 CALL w3iopo (
'READ', ndsop, iotest )
374 WRITE (ndso,931) ptnme(i), m2km*ptloc(1,i), m2km*ptloc(2,i)
376 WRITE (ndso,932) ptnme(i), m2km*ptloc(1,i), m2km*ptloc(2,i)
384 CALL nextln ( comstr , ndsi , ndse )
385 READ (ndsi,*,
END=801,ERR=802) TOUT, DTREQ, nout
386 dtreq = max( 0. , dtreq )
387 IF ( dtreq.EQ.0 ) nout = 1
388 nout = max( 1 , nout )
390 CALL stme21 ( tout , idtime )
391 WRITE (ndso,940) idtime
394 CALL tick21 ( tdum , dtreq )
395 CALL stme21 ( tdum , idtime )
396 IF ( dtreq .GE. 86400. )
THEN
397 WRITE (iddday,
'(I10,1X)') int(dtreq/86400.)
401 idtime(1:11) = iddday
403 WRITE (ndso,941) idtime, nout
407 ALLOCATE ( flreq(nopts) )
413 CALL nextln ( comstr , ndsi , ndse )
414 READ (ndsi,*,
END=801,ERR=802) ipoint
416 IF (ipoint .LT. 0)
THEN
424 IF ( (ipoint .GT. 0) .AND. (ipoint .LE. nopts) )
THEN
425 IF ( .NOT. flreq(ipoint) )
THEN
428 flreq(ipoint) = .true.
431 IF ( (ipoint .GT. 0) .AND. (nreq .EQ. nopts) )
THEN
432 CALL nextln ( comstr , ndsi , ndse )
433 READ (ndsi,*,
END=801,ERR=802) ipoint
437 IF (ipoint .NE. -1)
THEN
445 CALL nextln ( comstr , ndsi , ndse )
446 READ (ndsi,*,
END=801,ERR=802) itype
450 IF ( itype .EQ. 0 )
THEN
453 WRITE (ndso,942) itype,
'Generating buoy log file'
454 OPEN (ndbo,
file=fnmpre(:j)//
'buoy_log.ww3', &
455 status=
'NEW',err=805,iostat=ierr)
457 WRITE(ndbo,945) i, ptnme(i), ptloc(1,i), &
463 WRITE (ndso,942) itype,
'Checking contents of file'
465 CALL stme21 ( time , idtime )
466 WRITE (ndso,948) idtime
468 CALL w3iopon (
'READ', ndsop, iotest )
470 CALL w3iopo (
'READ', ndsop, iotest )
472 IF ( iotest .EQ. -1 )
THEN
480 ELSE IF (itype .EQ. 1)
THEN
481 WRITE (ndso,942) itype,
'1-D and/or 2-D spectra'
482 CALL nextln ( comstr , ndsi , ndse )
483 READ (ndsi,*,
END=801,ERR=802) OTYPE, SCALE1, SCALE2, &
488 IF (otype .EQ. 1)
THEN
489 WRITE (ndso,943)
'print plots'
490 IF ( scale1 .LT. 0. )
THEN
491 WRITE (ndso,1940)
'1-D'
492 ELSE IF ( scale1 .EQ. 0. )
THEN
493 WRITE (ndso,1941)
'1-D'
495 WRITE (ndso,1942)
'1-D', scale1
497 IF ( scale2 .LT. 0. )
THEN
498 WRITE (ndso,1940)
'2-D'
499 ELSE IF ( scale2 .EQ. 0. )
THEN
500 WRITE (ndso,1941)
'2-D'
502 WRITE (ndso,1942)
'2-D', scale2
504 ELSE IF ( otype .EQ. 2 )
THEN
505 WRITE (ndso,943)
'Table of 1-D spectral data'
507 IF ( ndstab.LE.0 .OR. ndstab.GT.99 ) ndstab = 51
508 WRITE ( tabnme(4:5) ,
'(I2.2)' ) ndstab
510 OPEN (ndstab,
file=fnmpre(:j)//tabnme,err=803,iostat=ierr)
511 WRITE (ndso,1947) tabnme
512 ELSE IF ( otype .EQ. 3 )
THEN
513 tfname =
'ww3.--------.spc'
514 WRITE (tfname(5:12),
'(I6.6,I2.2)') &
515 mod(tout(1),1000000), tout(2)/10000
516 WRITE (ndso,943)
'Transfer file'
518 WRITE (ndso,1943) tfname,
'UNFORMATTED'
520 OPEN (ndstab,
file=fnmpre(:j)//tfname,err=804, &
521 iostat=ierr,form=
'UNFORMATTED', convert=
file_endian)
522 WRITE (ndstab)
'WAVEWATCH III SPECTRA', &
524 WRITE (ndstab) (sig(ik)*
tpiinv,ik=1,nk)
528 WRITE (ndstab) (mod(2.5*
pi-th(ith),
tpi),ith=1,nth)
531 WRITE (ndso,1943) tfname,
'FORMATTED'
533 OPEN (ndstab,
file=fnmpre(:j)//tfname,err=804, &
534 iostat=ierr,form=
'FORMATTED')
535 WRITE (ndstab,1944)
'WAVEWATCH III SPECTRA', &
537 WRITE (ndstab,1945) (sig(ik)*
tpiinv,ik=1,nk)
538 WRITE (ndstab,1946) &
539 (mod(2.5*
pi-th(ith),
tpi),ith=1,nth)
542 WRITE (ndse,1011) otype
548 ELSE IF (itype .EQ. 2)
THEN
549 WRITE (ndso,942) itype,
'Table of mean wave parameters'
550 CALL nextln ( comstr , ndsi , ndse )
551 READ (ndsi,*,
END=801,ERR=802) OTYPE, ndstab
556 IF ( ndstab.LE.0 .OR. ndstab.GT.99 ) ndstab = 51
557 WRITE ( tabnme(4:5) ,
'(I2.2)' ) ndstab
559 OPEN (ndstab,
file=fnmpre(:j)//tabnme,err=803,iostat=ierr)
560 IF ( otype .EQ. 1 )
THEN
561 WRITE (ndso,2940)
'Depth, current and wind', tabnme
562 ELSE IF ( otype .EQ. 2 )
THEN
563 WRITE (ndso,2940)
'Mean wave parameters', tabnme
564 ELSE IF ( otype .EQ. 3 )
THEN
565 WRITE (ndso,2940)
'Nondimensional parameters (U*)', &
567 ELSE IF ( otype .EQ. 4 )
THEN
568 WRITE (ndso,2940)
'Nondimensional parameters (U10)', &
570 ELSE IF ( otype .EQ. 5 )
THEN
571 WRITE (ndso,2940)
'Validation parameters', tabnme
572 ELSE IF ( otype .EQ. 6 )
THEN
573 WRITE (ndso,2940)
'WMO standard mean parameters', tabnme
575 WRITE (ndse,1011) otype
581 ELSE IF (itype .EQ. 3)
THEN
582 WRITE (ndso,942) itype,
'Source terms'
583 CALL nextln ( comstr , ndsi , ndse )
584 READ (ndsi,*,
END=801,ERR=802) OTYPE, SCALE1, SCALE2, &
585 ndstab, flsrce, iscale, flform
589 iscale = max( 0 , min( 5 , iscale ) )
590 IF ( otype .EQ. 1 )
THEN
591 WRITE (ndso,943)
'Print plots'
592 ELSE IF ( otype .EQ. 2 )
THEN
593 IF ( iscale .LE. 2)
THEN
594 WRITE (ndso,943)
'Tables as a function of freq.'
596 WRITE (ndso,943)
'Tables as a function of f/fp.'
598 IF ( mod(iscale,3) .EQ. 1 )
THEN
599 WRITE (ndso,944)
'(nondimensional based on U10)'
600 ELSE IF ( mod(iscale,3) .EQ. 2)
THEN
601 WRITE (ndso,944)
'(nondimensional based on U*)'
603 ELSE IF ( otype .EQ. 3 )
THEN
604 IF ( iscale .LE. 2)
THEN
605 WRITE (ndso,943)
'Time scales as a function of freq.'
607 WRITE (ndso,943)
'Time scales as a function of f/fp.'
609 IF ( iscale .EQ. 1 )
THEN
610 WRITE (ndso,944)
'(nondimensional based on U10)'
611 ELSE IF ( iscale .EQ. 2)
THEN
612 WRITE (ndso,944)
'(nondimensional based on U*)'
614 ELSE IF ( otype .EQ. 4 )
THEN
615 tfname =
'ww3.--------.src'
616 WRITE (tfname(5:12),
'(I6.6,I2.2)') &
617 mod(tout(1),1000000), tout(2)/10000
618 WRITE (ndso,943)
'Transfer file'
620 WRITE (ndso,3943) tfname,
'UNFORMATTED'
622 OPEN (ndstab,
file=fnmpre(:j)//tfname,err=804, &
623 iostat=ierr,form=
'UNFORMATTED', convert=
file_endian)
624 WRITE (ndstab)
'WAVEWATCH III SOURCES', &
625 nk, nth, nreq, flsrce
626 WRITE (ndstab) (sig(ik)*
tpiinv,ik=1,nk)
627 WRITE (ndstab) (mod(2.5*
pi-th(ith),
tpi),ith=1,nth)
630 WRITE (ndso,3943) tfname,
'FORMATTED'
632 OPEN (ndstab,
file=fnmpre(:j)//tfname,err=804, &
633 iostat=ierr,form=
'FORMATTED')
634 WRITE (ndstab,3944)
'WAVEWATCH III SOURCES', &
635 nk, nth, nreq, flsrce
636 WRITE (ndstab,3945) (sig(ik)*
tpiinv,ik=1,nk)
637 WRITE (ndstab,3946) &
638 (mod(2.5*
pi-th(ith),
tpi),ith=1,nth)
641 WRITE (ndse,1011) otype
646 IF ( flsrce(i) )
WRITE (ndso,3940) idsrce(i)
650 IF ( otype .EQ. 1 )
THEN
651 IF ( scale1 .LT. 0. )
THEN
652 WRITE (ndso,1940)
'1-D'
653 ELSE IF ( scale1 .EQ. 0. )
THEN
654 WRITE (ndso,1941)
'1-D'
656 WRITE (ndso,1942)
'1-D', scale1
658 IF ( scale2 .LT. 0. )
THEN
659 WRITE (ndso,1940)
'2-D'
660 ELSE IF ( scale2 .EQ. 0. )
THEN
661 WRITE (ndso,1941)
'2-D'
663 WRITE (ndso,1942)
'2-D', scale2
667 IF ( otype.EQ.2 .OR. otype.EQ.3 )
THEN
669 IF ( ndstab.LE.0 .OR. ndstab.GT.99 ) ndstab = 51
670 WRITE ( tabnme(4:5) ,
'(I2.2)' ) ndstab
672 OPEN (ndstab,
file=fnmpre(:j)//tabnme,err=803,iostat=ierr)
673 WRITE (ndso,3941) tabnme
678 ELSE IF (itype .EQ. 4)
THEN
679 WRITE (ndso,942) itype,
'Spectral partitions or bulletins'
680 CALL nextln ( comstr , ndsi , ndse )
681 READ (ndsi,*,
END=801,ERR=802) OTYPE, NDSTAB, TIMEV, htype
685 IF ( otype .EQ. 1 )
THEN
686 WRITE (ndso,943)
'Partitioning of spectra'
688 IF ( ndstab.LE.0 .OR. ndstab.GT.99 ) ndstab = 51
689 WRITE ( tabnme(4:5) ,
'(I2.2)' ) ndstab
691 OPEN (ndstab,
file=fnmpre(:j)//tabnme,err=803,iostat=ierr)
692 WRITE (ndso,1947) tabnme
694 ELSEIF ( otype .GE. 2 )
THEN
695 IF (otype .EQ. 2 .OR. otype .EQ. 4 )
THEN
696 WRITE (ndso,943)
'Bulletins, ASCII format'
699 IF ( count(flreq) .GT. 1 )
THEN
701 WRITE (ndse,1012) otype
705 ndsbul = ndstab + (ij - 1)
706 OPEN(ndsbul,
file=trim(ptnme(ij))//
'.bull',err=803,iostat=ierr)
707 WRITE (ndso,1947) trim(ptnme(ij))//
'.bull'
709 ndscbul = ndstab + (ij - 1) + nopts
710 OPEN(ndscbul,
file=trim(ptnme(ij))//
'.cbull',err=803,iostat=ierr)
711 WRITE (ndso,1947) trim(ptnme(ij))//
'.cbull'
716 IF ( otype .EQ. 3 .OR. otype .EQ. 4 )
THEN
717 WRITE (ndso,943)
'Bulletins, CSV format'
722 IF ( ndsbul .GT. 0 ) icsv = ndsbul
724 IF ( ndscbul .GT. 0 ) icsv = ndscbul
726 ndscsv = ndstab + (ij - 1) + icsv
727 OPEN(ndscsv,
file=trim(ptnme(ij))//
'.csv',err=803,iostat=ierr)
728 WRITE (ndso,1947) trim(ptnme(ij))//
'.csv'
733 WRITE (ndse,1011) otype
740 WRITE (ndse,1010) itype
747 WRITE (ndso,950) nreq
751 WRITE (ndso,951) ptnme(i), m2km*ptloc(1,i), &
754 WRITE (ndso,953) ptnme(i), m2km*ptloc(1,i), &
760 IF ( itype.EQ.3 .AND. otype.EQ.4 )
WRITE (ndso,952)
789 dtest = dsec21( time , tout )
790 IF ( dtest .GT. 0. )
THEN
792 CALL w3iopon (
'READ', ndsop, iotest )
794 CALL w3iopo (
'READ', ndsop, iotest )
796 IF ( iotest .EQ. -1 )
THEN
802 IF ( dtest .LT. 0. )
THEN
803 CALL tick21 ( tout , dtreq )
808 CALL stme21 ( tout , idtime )
809 IF ( ( itype.EQ.1 .AND. otype.EQ.1 ) .OR. &
810 ( itype.EQ.3 .AND. otype.EQ.1 ) &
811 )
WRITE (ndso,960) idtime
813 CALL tick21 ( tout , dtreq )
814 IF ( iout .GE. nout )
EXIT
820 IF (itype .EQ. 4 .AND. ( otype .EQ. 2 .OR. otype .EQ. 4 ) )
THEN
823 ndsbul = ndstab + (ij - 1)
825 WRITE(ndsbul,974) bhsdrop, bhsmin
827 ndscbul = ndstab + (ij - 1) + nopts
840 WRITE (ndse,1000) ierr
848 WRITE (ndse,1002) ierr
852 WRITE (ndse,1003) ierr
856 WRITE (ndse,1004) ierr
861 WRITE (ndse,1005) ierr
875 900
FORMAT (/15x,
' *** WAVEWATCH III Point output post.*** '/ &
876 15x,
'==============================================='/)
877 901
FORMAT (
' Comment character is ''',a,
''''/)
879 920
FORMAT (
' Grid name : ',a/)
881 930
FORMAT (
' Points in file : '/ &
882 ' ------------------------------------')
883 931
FORMAT (
' ',a,2f10.2)
884 932
FORMAT (
' ',a,2(f8.1,
'E3'))
886 940
FORMAT (/
' Output time data : '/ &
887 ' --------------------------------------------------'/ &
889 941
FORMAT (
' Interval : ',a/ &
890 ' Number of requests : ',i6)
891 942
FORMAT (/
' Output type ',i2,
' :'/ &
892 ' --------------------------------------------------'/ &
894 943
FORMAT (
' Subtype : ',a)
897 945
FORMAT (
' ',i5,3x,a,2f10.2,3x,a)
899 948
FORMAT (
' Data for ',a)
900 949
FORMAT (/
' End of file reached '/)
902 950
FORMAT (/
' Requested output for',i3,
' points : '/ &
903 ' --------------------------------------------------')
904 951
FORMAT (
' ',a,2f10.2)
905 953
FORMAT (
' ',a,2(f8.1,
'E3'))
906 952
FORMAT (/
' Output times :'/ &
907 ' --------------------------------------------------')
909 961
FORMAT (
'----------------------------------------', &
910 '---------------------------')
911 962
FORMAT (
'DD = Day of Month'/ &
912 'HH = Hour of Day'/ &
913 'HS = Total Significant Wave Height (feet)'/ &
914 'SS = Significant Wave Height of separate system (feet)'/ &
915 'PP = Peak Period of separate system (whole seconds)'/ &
916 'DDD = Mean Direction of separate system (degrees,"from")')
918 971
FORMAT (
' +-------+-----------+-----------------+', &
919 '-----------------+-----------------+----', &
920 '-------------+-----------------+--------', &
923 75x,
'Hst : Total sigificant wave height.'/ &
924 75x,
'n : Number of fields with Hs > ',f4.2, &
925 ' in 2-D spectrum.'/ &
926 75x,
'x : Number of fields with Hs > ',f4.2, &
928 75x,
'Hs : Significant wave height of separate wave field.'/ &
929 75x,
'Tp : Peak period of separate wave field.'/ &
930 75x,
'dir : Mean direction of separate wave field.'/ &
931 75x,
'* : Wave generation due to local wind probable.')
933 1940
FORMAT (
' ',a,
' print plots not requested.')
934 1941
FORMAT (
' ',a,
' print plots normalized.')
935 1942
FORMAT (
' Scale factor ',a,
' spectrum : ',e10.3)
936 1943
FORMAT (
' File name : ',a,
' (',a,
')')
937 1944
FORMAT (
'''',a,
'''',1x,3i6,1x,
'''',a,
'''')
940 1947
FORMAT (
' File name : ',a)
942 2940
FORMAT (
' Table output : ',a/ &
946 3941
FORMAT (
' File name : ',a)
947 3943
FORMAT (
' File name : ',a,
' (',a,
')')
948 3944
FORMAT (
'''',a,
'''',1x,3i6,6l2)
952 960
FORMAT (//
' Output for ',a/ &
953 ' --------------------------------------------------')
955 999
FORMAT (/
' End of program '/ &
956 ' ========================================='/ &
957 ' WAVEWATCH III Point output '/)
959 1000
FORMAT (/
' *** WAVEWATCH III ERROR IN W3OUTP : '/ &
960 ' ERROR IN OPENING INPUT FILE'/ &
963 1001
FORMAT (/
' *** WAVEWATCH III ERROR IN W3OUTP : '/ &
964 ' PREMATURE END OF INPUT FILE'/)
966 1002
FORMAT (/
' *** WAVEWATCH III ERROR IN W3OUTP : '/ &
967 ' ERROR IN READING FROM INPUT FILE'/ &
970 1003
FORMAT (/
' *** WAVEWATCH III ERROR IN W3OUTP : '/ &
971 ' ERROR IN OPENING TABLE FILE'/ &
974 1004
FORMAT (/
' *** WAVEWATCH III ERROR IN W3OUTP : '/ &
975 ' ERROR IN OPENING IDL FILE'/ &
979 1005
FORMAT (/
' *** WAVEWATCH III ERROR IN W3OUTP : '/ &
980 ' ERROR IN OPENING BUOY LOG FILE'/ &
984 1007
FORMAT (/
' *** WAVEWATCH III ERROR IN W3OUTP : '/ &
985 ' ERROR IN READING FROM INPUT FILE'/ &
986 ' LAST POINT INDEX IS NOT -1'/ &
987 ' OR TOO MANY POINT INDEXES DEFINED'/)
989 1010
FORMAT (/
' *** WAVEWATCH III ERROR IN W3OUTP : '/ &
990 ' ILLEGAL TYPE, ITYPE =',i4/)
992 1011
FORMAT (/
' *** WAVEWATCH III ERROR IN W3OUTP : '/ &
993 ' ILLEGAL TYPE, OTYPE =',i4/)
995 1012
FORMAT (/
' *** WAVEWATCH III ERROR IN W3OUTP : '/ &
996 ' MULTIPLE OUTPUT POINTS DEFINED, ITYPE =',i4,/ &
997 ' ONLY SINGLE POINT ALLOWED IN THIS VERSION'/)
999 3960
FORMAT (/
' *** WAVEWATCH-III WARNING IN W3OUTP :'/ &
1000 ' Ice source terms !/IC1 skipped'/ &
1001 ' in dissipation term.'/)
1004 3960
FORMAT (/
' *** WAVEWATCH-III WARNING IN W3OUTP :'/ &
1005 ' Ice source terms !/IC2 skipped'/ &
1006 ' in dissipation term.'/)
1009 3960
FORMAT (/
' *** WAVEWATCH-III WARNING IN W3OUTP :'/ &
1010 ' Ice source terms !/IC3 skipped'/ &
1011 ' in dissipation term.'/)
1014 3960
FORMAT (/
' *** WAVEWATCH-III WARNING IN W3OUTP :'/ &
1015 ' Ice source terms !/IC4 skipped'/ &
1016 ' in dissipation term.'/)
1019 3960
FORMAT (/
' *** WAVEWATCH-III WARNING IN W3OUTP :'/ &
1020 ' Ice source terms !/IC5 skipped'/ &
1021 ' in dissipation term.'/)
1024 3961
FORMAT (/
' *** WAVEWATCH-III WARNING IN W3OUTP :'/ &
1025 ' Snl source terms !/NL5 skipped'/ &
1026 ' in interaction term.'/)
1287 INTEGER :: J, I1, I2, ISP, IKM, ITH, &
1288 IK, IH, IM, IS, IYR, IMTH, IDY, ITT, &
1289 I, NPART, IP, IX, IY, ISEA
1290 INTEGER,
SAVE :: IPASS = 0
1292 INTEGER,
SAVE :: IENT = 0
1294 REAL :: DEPTH, SQRTH, CDIR, SIX, R1, R2, &
1295 UDIR, UDIRR, UABS, XL, XH, XL2, XH2, &
1296 ET, EWN, ETR, ETX, ETY, EBND, EBX, &
1297 EBY, HSIG, WLEN, TMEAN, THMEAN, &
1298 THSPRD, EMAX, EL, EH, DENOM, FP, THP,&
1299 SPP, CD, USTAR, FACTOR, UNORM, ESTAR,&
1300 FPSTAR, FACF, FACE, FACS, HMAT, WNA, &
1301 XYZ, AGE1, AFR, AGE2, FACT, XSTAR, &
1302 YSTAR, FHIGH, ZWND, Z0, USTD, EMEAN, &
1303 FMEAN, WNMEAN, UDIRCA, X, Y, CHARN, &
1304 M2KM, ICEF, ICEDMAX, ICETHICK, &
1307 REAL ::TAUA, TAUADIR, RHOAIR
1310 REAL :: WN_R(NK),CG_ICE(NK), ALPHA_LIU(NK)
1313 REAL :: AMAX, FH1, FH2
1316 REAL :: AMAX, ALPHA(NK), FPI
1319 REAL :: AMAX, FMEANS, FMEANWS, TAUWX, TAUWY, &
1323 REAL :: AMAX, FMEANS, FMEANWS, TAUWX, TAUWY, &
1324 TAUWNX, TAUWNY, FMEAN1, WHITECAP(1:4), DLWMEAN
1327 REAL :: AMAX, TAUWX, TAUWY, TAUWNX, TAUWNY
1330 REAL :: TAUSCX, TAUSCY
1333 REAL :: D50, PSIC, BEDFORM(3), TAUBBL(2)
1337 REAL :: STAB0, STAB, COR1, COR2, ASFAC, &
1340 REAL,
SAVE :: HSMIN = 0.05
1341 REAL :: WN(NK), CG(NK), R(NK)
1342 REAL :: E(NK,NTH), E1(NK), APM(NK), &
1343 THBND(NK), SPBND(NK), A(NTH,NK), &
1345 REAL :: DIA(NTH,NK), SWN(NK,NTH), SNL(NK,NTH),&
1346 SDS(NK,NTH), SBT(NK,NTH), SIS(NK,NTH),&
1347 STT(NK,NTH), DIA2(NTH,NK)
1348 REAL :: XLN(NTH,NK), XIN(NTH,NK), XNL(NTH,NK),&
1349 XTR(NTH,NK), XDS(NTH,NK), XDB(NTH,NK),&
1350 XBT(NTH,NK), XBS(NTH,NK), XXX(NTH,NK),&
1351 XIS(NTH,NK), XWL(NTH,NK)
1352 REAL :: SIN1(NK), SNL1(NK), SDS1(NK), &
1353 SBT1(NK), STT1(NK), SIS1(NK), &
1357 LOGICAL :: LLWS(NSPEC)
1360 LOGICAL :: LLWS(NSPEC)
1361 REAL :: LAMBDA(NSPEC)
1363 CHARACTER :: DTME21*23
1364 CHARACTER(LEN=4) VAR1(6)
1365 CHARACTER(LEN=1) IDLAT, IDLON
1366 CHARACTER(LEN=100) BT8MSG
1368 DATA var1 /
'Sin ' ,
'Snl ',
'Sds ' ,
'Sbt ' ,
'Sice',
'Stot' /
1375 CALL strace (ient,
'W3EXPO')
1390 IF ( itype .EQ. 3 )
THEN
1405 WRITE (ndst,9000) (flreq(j),j=1,nopts)
1406 WRITE (ndst,9001) itype, otype, nreq, scale1, scale2, flsrce
1411 IF ( ( itype.EQ.1 .AND. otype.EQ.3 ) .OR. &
1412 ( itype.EQ.3 .AND. otype.EQ.4 ) )
THEN
1416 WRITE (ndstab,900) time
1420 IF (itype.EQ.2)
THEN
1421 IF ( nreq.EQ.1 .AND. ipass.EQ.1 )
THEN
1422 IF ( otype.EQ.1 )
THEN
1424 ELSE IF ( otype.EQ.2 )
THEN
1426 ELSE IF ( otype.EQ.3 )
THEN
1428 ELSE IF ( otype.EQ.4 )
THEN
1430 ELSE IF ( otype.EQ.5 )
THEN
1432 ELSE IF ( otype.EQ.6 )
THEN
1436 IF ( nreq.NE.1 )
THEN
1437 CALL stme21 ( time , dtme21 )
1438 IF ( ipass .NE. 1 )
WRITE (ndstab,1910)
1439 IF ( otype.EQ.1 )
THEN
1441 WRITE (ndstab,1911) dtme21
1443 WRITE (ndstab,1711) dtme21
1445 ELSE IF ( otype.EQ.2 )
THEN
1447 WRITE (ndstab,1912) dtme21
1449 WRITE (ndstab,1712) dtme21
1451 ELSE IF ( otype.EQ.3 )
THEN
1452 WRITE (ndstab,1913) dtme21
1453 ELSE IF ( otype.EQ.4 )
THEN
1454 WRITE (ndstab,1914) dtme21
1455 ELSE IF ( otype.EQ.5 )
THEN
1457 WRITE (ndstab,1915) dtme21
1459 WRITE (ndstab,1715) dtme21
1461 ELSE IF ( otype.EQ.6 )
THEN
1463 WRITE (ndstab,1916) dtme21
1465 WRITE (ndstab,1716) dtme21
1471 IF (itype.EQ.3)
THEN
1472 IF ( otype .EQ. 4 )
THEN
1473 CALL stme21 ( time , dtme21 )
1474 WRITE (ndso,905) dtme21
1482 IF ( flreq(j) )
THEN
1485 WRITE (ndst,9002) ptnme(j)
1490 depth = max( dmin, dpo(j) )
1491 sqrth = sqrt( depth )
1492 udir = mod( 270. - wdo(j)*
rade , 360. )
1493 udirca = wdo(j)*
rade
1495 uabs = max( 0.001 , wao(j) )
1497 taua = max( 0.001 , tauao(j))
1498 tauadir = mod( 270. - taudo(j)*
rade , 360. )
1499 rhoair = max( 0. , dairo(j))
1501 cdir = mod( 270. - cdo(j)*
rade , 360. )
1503 icedmax = max( 0., icefo(j))
1505 icethick = max(0., iceho(j))
1506 icecon = max(0., iceo(j))
1510 stab0 = zwind *
grav / 273.
1511 stab = stab0 * aso(j) / max(5.,wao(j))**2
1512 stab = max( -1. , min( 1. , stab ) )
1513 tharg1 = max( 0. , ffng*(stab-ofstab))
1514 tharg2 = max( 0. , ffps*(stab-ofstab))
1515 cor1 = ccng * tanh(tharg1)
1516 cor2 = ccps * tanh(tharg2)
1517 asfac = sqrt( (1.+cor1+cor2)/shstab )
1521 WRITE (ndst,9010) depth
1524 six = sig(ik) * sqrth
1526 IF (i1.LE.
n1max)
THEN
1528 r1 = six/
dsie - real(i1)
1530 wn(ik) = ( r2*
ewn1(i1) + r1*
ewn1(i2) ) / depth
1531 cg(ik) = ( r2*
ecg1(i1) + r1*
ecg1(i2) ) * sqrth
1533 wn(ik) = sig(ik)*sig(ik)/
grav
1534 cg(ik) = 0.5 *
grav / sig(ik)
1537 WRITE (ndst,9011) ik,
tpi/sig(ik), wn(ik), cg(ik)
1546 IF (igpars(2).EQ.1)
THEN
1547 IF(igpars(1).EQ.1)
THEN
1548 CALL w3addig(spco(:,j),dpo(j),wn,cg,0)
1550 CALL w3add2ndorder(spco(:,j),dpo(j),wn,cg,0)
1568 isp = ith + (ik-1)*nth
1569 e(ik,ith) = spco(isp,j)
1570 ebnd = ebnd + spco(isp,j)
1571 ebx = ebx + spco(isp,j)*ecos(ith)
1572 eby = eby + spco(isp,j)*esin(ith)
1575 apm(ik)= e1(ik) / (
tpi *
grav**2 / sig(ik)**5 )
1576 IF ( e1(ik) .GT. 1.e-5)
THEN
1577 thbnd(ik) = mod(630.-
rade*atan2(eby,ebx),360.)
1578 spbnd(ik) =
rade * sqrt( max( 0. , 2.*( 1. - &
1579 sqrt( max(0.,(ebx**2+eby**2)/ebnd**2) ) ) ) )
1584 ebnd = e1(ik) * dsii(ik) *
tpiinv
1586 ewn = ewn + ebnd / wn(ik)
1587 etr = etr + ebnd / sig(ik)
1588 etx = etx + ebx * dsii(ik)
1589 ety = ety + eby * dsii(ik)
1594 ebnd = e1(nk) *
tpiinv / ( sig(nk) * dth )
1596 ewn = ewn + ftwl*ebnd
1597 etr = etr + fttr*ebnd
1601 hsig = 4. * sqrt( max(0.,et) )
1602 IF ( hsig .GT. hsmin )
THEN
1603 wlen = ewn / et *
tpi
1604 tmean = etr / et *
tpi
1605 thmean = mod( 630. -
rade*atan2(ety,etx) , 360. )
1606 thsprd =
rade * sqrt( max( 0. , 2.*( 1. - sqrt( &
1607 max(0.,(etx**2+ety**2)/et**2) ) ) ) )
1608 IF ( thsprd .LT. 0.01*
rade*dth ) thsprd = 0.
1628 IF ( e1(ik) .GT. emax )
THEN
1634 IF ( hsig .GE. hsmin .AND. ikm .NE. nk )
THEN
1635 IF ( ikm .EQ. 1 )
THEN
1638 el = e1(ikm-1) - e1(ikm)
1641 eh = e1(ikm+1) - e1(ikm)
1643 denom = xl*eh - xh*el
1645 fp = sig(ikm) * ( 1. + 0.5 * ( xl2*eh - xh2*el ) &
1646 / sign( max(abs(denom),1.e-15) , denom ) )
1649 IF ( spp .LT. 0.01*
rade*dth ) spp = 0.
1658 IF ( itype.EQ.4 )
CALL w3part &
1659 ( e, uabs, udirca, depth, wn, npart, xpart, dimxp )
1663 IF ( ( itype.EQ.2 .AND. (otype.EQ.3.OR.otype.EQ.4) ) .OR. &
1664 ( itype.EQ.1 .AND. (otype.EQ.2) ) )
THEN
1667 factor =
tpiinv * cg(ik) / sig(ik)
1669 isp = ith + (ik-1)*nth
1670 a(ith,ik) = factor * spco(isp,j)
1671 wn2(ith,ik) = wn(ik)
1706 CALL w3spr1 (a, cg, wn, emean, fmean, wnmean, amax)
1710 CALL w3spr2 (a, cg, wn, depth, fp , uabs, ustar, &
1711 emean, fmean, wnmean, amax, alpha, fp )
1714 CALL w3spr3 (a, cg, wn, emean, fmean, fmeans, &
1715 wnmean, amax, uabs, udirr, ustar, ustd,&
1716 tauwx, tauwy, cd, z0, charn, llws, fmeanws )
1719 CALL w3spr4 (a, cg, wn, emean, fmean, fmean1, &
1720 wnmean, amax, uabs, udirr, &
1722 taua, tauadir, rhoair, &
1724 ustar, ustd, tauwx, tauwy, cd, z0, &
1725 charn, llws, fmeanws, dlwmean )
1728 CALL w3spr6 (a, cg, wn, emean, fmean, wnmean, amax, fp)
1732 CALL w3flx1 ( zwnd, uabs, udirr, &
1733 ustar, ustd, z0, cd )
1736 CALL w3flx2 ( zwnd, depth, fp, uabs, udirr, &
1737 ustar, ustd, z0, cd )
1740 CALL w3flx3 ( zwnd, depth, fp, uabs, udirr, &
1741 ustar, ustd, z0, cd )
1744 CALL w3flx4 ( zwnd, uabs, udirr, ustar, ustd, z0, cd )
1747 CALL w3flx5 ( zwnd, uabs, udirr, taua, tauadir, &
1748 rhoair, ustar, ustd, z0, cd, charn )
1753 CALL w3sin2 (a, cg, wn2, uabs, udirr, cd, z0, &
1755 CALL w3spr2 (a, cg, wn, depth, fpi, uabs, ustar, &
1756 emean, fmean, wnmean, amax, alpha, fp )
1762 aso(j), udirr, z0, cd, tauwx, tauwy,&
1763 tauwnx, tauwny, ice, xin, dia, llws, ix, iy )
1764 CALL w3spr3 (a, cg, wn, emean, fmean, fmeans, &
1765 wnmean, amax, uabs, udirr, ustar, ustd,&
1766 tauwx, tauwy, cd, z0, charn, llws, fmeanws )
1772 aso(j), udirr, z0, cd, tauwx, tauwy,&
1773 tauwnx, tauwny, xin, dia, llws, ix, iy, lambda )
1774 CALL w3spr4 (a, cg, wn, emean, fmean, fmean1, &
1775 wnmean, amax, uabs, udirr, &
1777 taua, tauadir, rhoair, &
1779 ustar, ustd, tauwx, tauwy, cd, z0, &
1780 charn, llws, fmeanws, dlwmean )
1783 CALL w3flx2 ( zwnd, depth, fp, uabs, udirr, &
1784 ustar, ustd, z0, cd )
1787 CALL w3flx3 ( zwnd, depth, fp, uabs, udirr, &
1788 ustar, ustd, z0, cd )
1799 IF ( wao(j) .LT. 0.01 )
THEN
1804 IF ( otype.EQ.3 )
THEN
1809 estar = et *
grav**2 / unorm**4
1811 xstar = ptloc(1,j) *
grav / unorm**2
1812 ystar = ptloc(2,j) *
grav / unorm**2
1815 * cos(ptloc(2,j)*
dera)
1824 IF ( itype.EQ.3 )
THEN
1827 factor =
tpiinv * cg(ik) / sig(ik)
1829 a(ith,ik) = factor * spco(ith+(ik-1)*nth,j)
1830 wn2(ith,ik) = wn(ik)
1880 CALL w3spr1 (a, cg, wn, emean, fmean, wnmean, amax)
1884 fhigh = max( fh1 , fh2 )
1887 CALL w3spr2 (a, cg, wn, depth, fp , uabs, ustar, &
1888 emean, fmean, wnmean, amax, alpha, fp )
1891 CALL w3spr3 (a, cg, wn, emean, fmean, fmeans, &
1892 wnmean, amax, uabs, udirr, ustar, ustd,&
1893 tauwx, tauwy, cd, z0, charn, llws, fmeanws )
1896 CALL w3spr4 (a, cg, wn, emean, fmean, fmean1, &
1897 wnmean, amax, uabs, udirr, &
1899 taua, tauadir, rhoair, &
1901 ustar, ustd, tauwx, tauwy, cd, z0, &
1902 charn, llws, fmeanws, dlwmean )
1905 CALL w3spr6 (a, cg, wn, emean, fmean, wnmean, amax, fp)
1910 CALL w3flx1 ( zwnd, uabs, udirr, &
1911 ustar, ustd, z0, cd )
1914 CALL w3flx2 ( zwnd, depth, fp, uabs, udirr, &
1915 ustar, ustd, z0, cd )
1918 CALL w3flx3 ( zwnd, depth, fp, uabs, udirr, &
1919 ustar, ustd, z0, cd )
1922 CALL w3flx4 ( zwnd, uabs, udirr, ustar, ustd, z0, cd )
1925 CALL w3flx5 ( zwnd, uabs, udirr, taua, tauadir, &
1926 rhoair, ustar, ustd, z0, cd, charn )
1931 CALL w3sin2 (a, cg, wn2, uabs, udirr, cd, z0, &
1933 CALL w3spr2 (a, cg, wn, depth, fpi, uabs, ustar, &
1934 emean, fmean, wnmean, amax, alpha, fp )
1937 CALL w3spr3 (a, cg, wn, emean, fmean, fmeans, &
1938 wnmean, amax, uabs, udirr, ustar, ustd,&
1939 tauwx, tauwy, cd, z0, charn, llws, fmeanws )
1941 aso(j), udirr, z0, cd,tauwx, tauwy, &
1942 tauwnx, tauwny, ice, xin, dia, llws, ix, iy )
1945 CALL w3spr4 (a, cg, wn, emean, fmean, fmean1, &
1946 wnmean, amax, uabs, udirr, &
1948 taua, tauadir, rhoair, &
1950 ustar, ustd, tauwx, tauwy, cd, z0, &
1951 charn, llws, fmeanws, dlwmean )
1953 aso(j), udirr, z0, cd,tauwx, tauwy, &
1954 tauwnx, tauwny, xin, dia, llws, ix, iy, lambda )
1957 CALL w3flx2 ( zwnd, depth, fp, uabs, udirr, &
1958 ustar, ustd, z0, cd )
1961 CALL w3flx3 ( zwnd, depth, fp, uabs, udirr, &
1962 ustar, ustd, z0, cd )
1970 IF ( flsrce(2) )
THEN
1972 CALL w3sln1 (wn, fhigh, ustar, udirr, xln )
1976 CALL w3sin1 (a, wn2, ustar, udirr, xin, dia )
1979 CALL w3sin2 (a, cg, wn2, uabs, udirr, cd, z0,&
1983 CALL w3sin3 ( a, cg, wn2, uabs, ustar, &
1985 z0, cd, tauwx, tauwy,tauwnx, tauwny, &
1986 ice, xin, dia, llws, ix, iy )
1989 CALL w3sin4 ( a, cg, wn2, uabs, ustar, &
1991 z0, cd, tauwx, tauwy,tauwnx, tauwny, &
1992 xin, dia, llws, ix, iy, lambda )
1995 CALL w3sin6 (a, cg, wn2, uabs, ustar, udirr, cd,
dair, &
1996 tauwx, tauwy, tauwnx, tauwny, xin, dia )
1999 IF ( flsrce(3) )
THEN
2001 IF (iqtpe.GT.0)
THEN
2002 CALL w3snl1 ( a, cg, wnmean*depth, xnl, dia )
2004 CALL w3snlgqm ( a, cg, wn, depth, xnl, dia )
2008 CALL w3snl2 ( a, cg, depth, xnl, dia )
2011 CALL w3snl3 ( a, cg, wn, depth, xnl, dia )
2014 CALL w3snl4 ( a, cg, wn, depth, xnl, dia )
2017 IF ( flsrce(4) )
THEN
2019 CALL w3sds1 ( a, wn2, emean, fmean, wnmean, &
2023 CALL w3sds2 ( a, cg, wn, fpi, ustar, &
2027 CALL w3sds3 ( a, wn, cg, emean, fmeans, wnmean, &
2028 ustar, ustd, depth, xds, dia, ix, iy )
2031 CALL w3sds4 ( a, wn, cg, ustar, ustd, depth,
dair, xds, &
2032 dia, ix, iy, lambda, whitecap, dlwmean )
2035 CALL w3sds6 ( a, cg, wn, xds, dia )
2036 IF (swl6s6)
CALL w3swl6 ( a, cg, wn, xwl, dia )
2040 CALL w3sdb1 ( i, a, depth, emean, fmean, &
2041 wnmean, cg, lbreak, xdb, dia )
2044 IF ( flsrce(5) )
THEN
2046 CALL w3sbt1 ( a, cg, wn, depth, xbt, dia )
2053 psic= sed_psic(isea)
2057 CALL w3sbt4 ( a, cg, wn, depth, d50, psic, taubbl, &
2058 bedform, xbt, dia, ix, iy )
2061 bt8msg=
'ww3_outp: ITYPE=3 with BT8 or BT9: Sbot out'//&
2062 'put is not yet supported. Use "F" for the 5'//&
2065 CALL extcde( 516,msg=bt8msg)
2068 CALL extcde( 516,msg=bt8msg)
2079 CALL w3sbs1 ( a, cg, wn, depth, &
2080 cao(j)*cos(cdo(j)), cao(j)*sin(cdo(j)), &
2081 tauscx, tauscy, xbs, dia )
2085 IF ( flsrce(6) )
THEN
2088 CALL liu_forward_dispersion (icethick,0.,depth, &
2089 sig,wn_r,cg_ice,alpha_liu)
2097 CALL w3sis2(a, depth, icecon, icethick, icef, icedmax, &
2098 ix, iy, xis, dia, dia2, wn, cg, wn_r, cg_ice, r)
2106 IF ( iscale.EQ.0 .OR. iscale.EQ.3 )
THEN
2110 ELSE IF ( iscale.EQ.1 .OR. iscale.EQ.4 )
THEN
2112 face =
grav**3 / uabs**5
2113 facs =
grav**2 / uabs**4
2114 ELSE IF ( iscale.EQ.2 .OR. iscale.EQ.5 )
THEN
2116 face =
grav**3 / ustar**5
2117 facs =
grav**2 / ustar**4
2121 factor =
tpi / cg(ik) * sig(ik)
2130 isp = ith + (ik-1)*nth
2131 e(ik,ith) = spco(isp,j)
2132 swn(ik,ith) = ( xln(ith,ik) + xin(ith,ik) ) * factor
2133 snl(ik,ith) = ( xnl(ith,ik) + xtr(ith,ik) ) * factor
2134 sds(ik,ith) = ( xds(ith,ik) + xdb(ith,ik) ) * factor
2136 sds(ik,ith) = sds(ik,ith) +(xwl(ith,ik) * factor)
2138 sbt(ik,ith) = ( xbt(ith,ik) * xbs(ith,ik) ) * factor
2139 sis(ik,ith) = xis(ith,ik) * factor
2140 stt(ik,ith) = swn(ik,ith) + snl(ik,ith)+sds(ik,ith)&
2141 + sbt(ik,ith) + sis(ik,ith) &
2142 + xxx(ith,ik) * factor
2143 e1(ik) = e1(ik) + e(ik,ith)
2144 sin1(ik) = sin1(ik) + swn(ik,ith)
2145 snl1(ik) = snl1(ik) + snl(ik,ith)
2146 sds1(ik) = sds1(ik) + sds(ik,ith)
2147 sbt1(ik) = sbt1(ik) + sbt(ik,ith)
2148 sis1(ik) = sis1(ik) + sis(ik,ith)
2150 e1(ik) = e1(ik) * dth * face
2151 sin1(ik) = sin1(ik) * dth * facs
2152 snl1(ik) = snl1(ik) * dth * facs
2153 sds1(ik) = sds1(ik) * dth * facs
2154 sbt1(ik) = sbt1(ik) * dth * facs
2155 sis1(ik) = sis1(ik) * dth * facs
2158 stt1 = sin1 + snl1 + sds1 + sbt1 + sis1
2170 IF ( itype .EQ. 1 )
THEN
2172 IF ( otype .EQ. 1 )
THEN
2174 IF ( scale1 .GE. 0. ) &
2175 CALL prt1ds (ndso, nk, e1, sig(1:nk),
'RAD/S',&
2176 17, scale1,
'E(f)',
'm^2s', ptnme(j) )
2177 IF ( scale2 .GE. 0. ) &
2178 CALL prt2ds (ndso, nk, nk, nth, e, sig(1:nk), &
2179 'RAD/S', 1., scale2, 0.0001,
'E(f,th)', &
2181 WRITE (ndso,910) dpo(j), uabs
2182 IF ( wao(j) .GT. 0. )
WRITE (ndso,911) udir
2183 WRITE (ndso,912) aso(j), cao(j)
2184 IF ( cao(j) .GT. 0. )
WRITE (ndso,913) cdir
2185 WRITE (ndso,914) hsig, wlen, tmean, thmean, thsprd
2187 ELSE IF ( otype .EQ. 2 )
THEN
2189 CALL stme21 ( time , dtme21 )
2191 WRITE (ndstab,920) dtme21, ptnme(j), &
2192 m2km*ptloc(1,j), m2km*ptloc(2,j), &
2193 dpo(j), ustar, wao(j), udir
2195 WRITE (ndstab,720) dtme21, ptnme(j), &
2196 m2km*ptloc(1,j), m2km*ptloc(2,j), &
2197 dpo(j), ustar, wao(j), udir
2199 IF ( fp .EQ. 0. ) fp = sig(nk)
2201 WRITE (ndstab,921)
tpiinv*sig(ik), sig(ik)/fp, &
2202 e1(ik), thbnd(ik), spbnd(ik), apm(ik)
2204 IF ( fp .EQ. sig(nk) ) fp = 0.
2207 ELSE IF ( otype .EQ. 3 )
THEN
2210 WRITE (ndstab) ptnme(j), ptloc(2,j), &
2211 ptloc(1,j), dpo(j), wao(j), &
2213 WRITE (ndstab) ((e(ik,ith),ik=1,nk),ith=1,nth)
2215 WRITE (ndstab,901) ptnme(j), m2km*ptloc(2,j), &
2216 m2km*ptloc(1,j), dpo(j), &
2217 wao(j), udir, cao(j), cdir
2218 WRITE (ndstab,902) &
2219 ((e(ik,ith),ik=1,nk),ith=1,nth)
2226 ELSE IF ( itype .EQ. 2 )
THEN
2228 IF ( nreq .EQ. 1 )
THEN
2230 iyr = time(1) / 10000
2231 imth = mod( time(1) , 10000 ) / 100
2232 idy = mod( time(1) , 100 )
2233 ih = time(2) / 10000
2234 im = mod( time(2) , 10000 ) / 100
2235 is = mod( time(2) , 100 )
2236 IF ( otype .EQ. 1 )
THEN
2237 WRITE (ndstab,1921) time(1), ih, im, is, &
2238 dpo(j), cao(j), cdir, wao(j), udir
2239 ELSE IF ( otype .EQ. 2 )
THEN
2240 WRITE (ndstab,1922) time(1), ih, im, is, &
2241 hsig, wlen, tmean, thmean, thsprd, &
2243 ELSE IF ( otype.EQ.3 )
THEN
2244 WRITE (ndstab,1923) time(1), ih, im, is, &
2245 unorm, estar, fpstar, cd*1000., apm(nk)*100.
2246 ELSE IF ( otype.EQ.4 )
THEN
2247 WRITE (ndstab,1924) time(1), ih, im, is, &
2248 unorm, estar, fpstar, cd*1000., apm(nk)*100.
2249 ELSE IF ( otype.EQ.5 )
THEN
2250 hmat = min( 100. , 3.33*
grav*hsig/uabs**2 )
2251 IF ( hsig .GE. hsmin )
THEN
2252 CALL wavnu1 ( fp, dpo(j), wna, xyz )
2253 age1 = min( 100. , fp / wna / uabs )
2255 CALL wavnu1 ( afr, dpo(j), wna, xyz )
2256 age2 = min( 100. , afr / wna / uabs )
2261 WRITE (ndstab,1925) time(1), ih, im, is, &
2262 wao(j), udir, hsig, hmat, age1, age2, &
2264 ELSE IF ( otype.EQ.6 )
THEN
2265 IF ( hsig .GE. hsmin )
THEN
2266 WRITE (ndstab,1926) iyr, imth, idy, ih, &
2267 wao(j), nint(udir), hsig,
tpi / fp
2269 WRITE (ndstab,1926) iyr, imth, idy, ih, &
2270 wao(j), nint(udir), hsig, 0.0
2276 IF ( otype .EQ. 1 )
THEN
2278 WRITE (ndstab,1931) m2km*ptloc(1,j), &
2279 m2km*ptloc(2,j), dpo(j), cao(j), &
2282 WRITE (ndstab,1731) m2km*ptloc(1,j), &
2283 m2km*ptloc(2,j), dpo(j), cao(j), &
2286 ELSE IF ( otype .EQ. 2 )
THEN
2288 WRITE (ndstab,1932) m2km*ptloc(1,j), &
2289 m2km*ptloc(2,j), hsig, wlen, &
2290 tmean, thmean, thsprd, fp*
tpiinv, &
2293 WRITE (ndstab,1732) m2km*ptloc(1,j), &
2294 m2km*ptloc(2,j), hsig, wlen, &
2295 tmean, thmean, thsprd, fp*
tpiinv, &
2298 ELSE IF ( otype .EQ. 3 )
THEN
2299 WRITE (ndstab,1933) 1.e-4*xstar, &
2300 1.e-4*ystar, unorm, estar, fpstar, &
2301 cd*1000., apm(nk)*100.
2302 ELSE IF ( otype .EQ. 4 )
THEN
2303 WRITE (ndstab,1934) xstar, ystar, unorm, &
2304 estar, fpstar, cd*1000., apm(nk)*100.
2305 ELSE IF ( otype .EQ. 5 )
THEN
2306 hmat = min( 100. , 3.33*
grav*hsig/uabs**2 )
2307 CALL wavnu1 ( fp, dpo(j), wna, xyz )
2308 age1 = min( 100. , fp / wna / uabs )
2310 CALL wavnu1 ( afr, dpo(j), wna, xyz )
2311 age2 = min( 100. , afr / wna / uabs )
2313 WRITE (ndstab,1935) m2km*ptloc(1,j), &
2314 m2km*ptloc(2,j), wao(j), udir, &
2315 hsig, hmat, age1, age2, aso(j)
2317 WRITE (ndstab,1735) m2km*ptloc(1,j), &
2318 m2km*ptloc(2,j), wao(j), udir, &
2319 hsig, hmat, age1, age2, aso(j)
2321 ELSE IF ( otype .EQ. 6 )
THEN
2322 IF ( hsig .GE. hsmin )
THEN
2324 WRITE (ndstab,1936) m2km*ptloc(1,j), &
2325 m2km*ptloc(2,j), wao(j), nint(udir),&
2328 WRITE (ndstab,1736) m2km*ptloc(1,j), &
2329 m2km*ptloc(2,j), wao(j), nint(udir),&
2334 WRITE (ndstab,1936) m2km*ptloc(1,j), &
2335 m2km*ptloc(2,j), wao(j), nint(udir),&
2338 WRITE (ndstab,1736) m2km*ptloc(1,j), &
2339 m2km*ptloc(2,j), wao(j), nint(udir),&
2349 ELSE IF ( itype .EQ. 3 )
THEN
2351 IF ( otype .EQ. 1 )
THEN
2353 IF ( scale1 .GE. 0. )
THEN
2355 CALL prt1ds (ndso, nk, e1, sig(1:nk), &
2356 'RAD/S', 17, 0.,
'E(f)',
'm^2s', &
2358 IF (flsrce(2) .OR. flsrce(3) .OR. &
2359 flsrce(4) .OR. flsrce(5) .OR. &
2360 flsrce(6) .OR. flsrce(7) ) &
2361 CALL prt1dm (ndso, nk, 6, e1all, sig(1:nk),&
2362 'RAD/S', 17, scale1, var1,
'M2', &
2365 IF ( scale2 .GE. 0. )
THEN
2367 CALL prt2ds (ndso, nk, nk, nth, e, &
2368 sig(1:nk),
'RAD/S', 1., 0., 0.0001, &
2369 'E(f,th)',
'm^2s', ptnme(j) )
2371 CALL prt2ds (ndso, nk, nk, nth, swn, &
2372 sig(1:nk),
'RAD/S', 1., scale2, 0.0001,&
2373 'Sin(f,th)',
'm^2', ptnme(j) )
2375 CALL prt2ds (ndso, nk, nk, nth, snl, &
2376 sig(1:nk),
'RAD/S', 1., scale2, 0.0001,&
2377 'Snl(f,th)',
'm^2', ptnme(j) )
2379 CALL prt2ds (ndso, nk, nk, nth, sds, &
2380 sig(1:nk),
'RAD/S', 1., scale2, 0.0001,&
2381 'Sds(f,th)',
'm^2', ptnme(j) )
2383 CALL prt2ds (ndso, nk, nk, nth, sbt, &
2384 sig(1:nk),
'RAD/S', 1., scale2, 0.0001,&
2385 'Sbt(f,th)',
'm^2', ptnme(j) )
2387 CALL prt2ds (ndso, nk, nk, nth, sis, &
2388 sig(1:nk),
'RAD/S', 1., scale2, 0.0001,&
2389 'Sice(f,th)',
'm^2', ptnme(j) )
2391 CALL prt2ds (ndso, nk, nk, nth, stt, &
2392 sig(1:nk),
'RAD/S', 1., scale2, 0.0001,&
2393 'Stot(f,th)',
'm^2', ptnme(j) )
2396 ELSE IF ( otype .EQ. 2 )
THEN
2398 CALL stme21 ( time , dtme21 )
2400 WRITE (ndstab,2920) dtme21, ptnme(j), &
2401 m2km*ptloc(1,j), m2km*ptloc(2,j), &
2402 dpo(j), ustar, wao(j)
2404 WRITE (ndstab,2720) dtme21, ptnme(j), &
2405 m2km*ptloc(1,j), m2km*ptloc(2,j), &
2406 dpo(j), ustar, wao(j)
2408 IF ( iscale.EQ.0 )
THEN
2410 ELSE IF ( iscale.EQ.1 .OR. iscale.EQ.2 )
THEN
2412 ELSE IF ( iscale.EQ.3 )
THEN
2414 ELSE IF ( iscale.EQ.4 .OR. iscale.EQ.5 )
THEN
2417 IF ( iscale.GE.3 ) facf = 1. / fp
2419 WRITE (ndstab,2930) facf*sig(ik), e1(ik), &
2420 sin1(ik), snl1(ik), sds1(ik), sbt1(ik), &
2426 ELSE IF ( otype .EQ. 3 )
THEN
2428 CALL stme21 ( time , dtme21 )
2430 WRITE (ndstab,2920) dtme21, ptnme(j), &
2431 m2km*ptloc(1,j), m2km*ptloc(2,j), &
2432 dpo(j), ustar, wao(j)
2434 WRITE (ndstab,2720) dtme21, ptnme(j), &
2435 m2km*ptloc(1,j), m2km*ptloc(2,j), &
2436 dpo(j), ustar, wao(j)
2438 IF ( iscale.EQ.0 )
THEN
2440 ELSE IF ( iscale.EQ.1 .OR. iscale.EQ.2 )
THEN
2442 ELSE IF ( iscale.EQ.3 )
THEN
2444 ELSE IF ( iscale.EQ.4 .OR. iscale.EQ.5 )
THEN
2448 IF ( iscale.GE.3 ) facf = 1. / fp
2450 fact = 1. / max( 1.e-10 , e1(ik) )
2451 IF ( e1(ik) .GT. 1.e-10 )
THEN
2452 WRITE (ndstab,2931) facf*sig(ik), e1(ik), &
2453 fact*sin1(ik), fact*snl1(ik), &
2454 fact*sds1(ik), fact*sbt1(ik), &
2455 fact*sis1(ik),fact*stt1(ik)
2457 WRITE (ndstab,2931) facf*sig(ik), e1(ik)
2462 ELSE IF ( otype .EQ. 4 )
THEN
2465 WRITE (ndstab) ptnme(j), ptloc(2,j), &
2466 ptloc(1,j), dpo(j), wao(j), &
2468 IF ( flsrce(1) )
WRITE (ndstab) &
2469 ((e(ik,ith),ik=1,nk),ith=1,nth)
2470 IF ( flsrce(2) )
WRITE (ndstab) &
2471 ((swn(ik,ith),ik=1,nk),ith=1,nth)
2472 IF ( flsrce(3) )
WRITE (ndstab) &
2473 ((snl(ik,ith),ik=1,nk),ith=1,nth)
2474 IF ( flsrce(4) )
WRITE (ndstab) &
2475 ((sds(ik,ith),ik=1,nk),ith=1,nth)
2476 IF ( flsrce(5) )
WRITE (ndstab) &
2477 ((sbt(ik,ith),ik=1,nk),ith=1,nth)
2478 IF ( flsrce(6) )
WRITE (ndstab) &
2479 ((sis(ik,ith),ik=1,nk),ith=1,nth)
2480 IF ( flsrce(7) )
WRITE (ndstab) &
2481 ((stt(ik,ith),ik=1,nk),ith=1,nth)
2484 WRITE (ndstab,901) ptnme(j), &
2485 m2km*ptloc(2,j), m2km*ptloc(1,j), &
2486 dpo(j), wao(j), udir, cao(j), cdir
2488 WRITE (ndstab,701) ptnme(j), &
2489 m2km*ptloc(2,j), m2km*ptloc(1,j), &
2490 dpo(j), wao(j), udir, cao(j), cdir
2492 IF ( flsrce(1) )
WRITE (ndstab,902) &
2493 ((e(ik,ith),ik=1,nk),ith=1,nth)
2494 IF ( flsrce(2) )
WRITE (ndstab,902) &
2495 ((swn(ik,ith),ik=1,nk),ith=1,nth)
2496 IF ( flsrce(3) )
WRITE (ndstab,902) &
2497 ((snl(ik,ith),ik=1,nk),ith=1,nth)
2498 IF ( flsrce(4) )
WRITE (ndstab,902) &
2499 ((sds(ik,ith),ik=1,nk),ith=1,nth)
2500 IF ( flsrce(5) )
WRITE (ndstab,902) &
2501 ((sbt(ik,ith),ik=1,nk),ith=1,nth)
2502 IF ( flsrce(6) )
WRITE (ndstab,902) &
2503 ((sis(ik,ith),ik=1,nk),ith=1, nth)
2504 IF ( flsrce(7) )
WRITE (ndstab,902) &
2505 ((stt(ik,ith),ik=1,nk),ith=1,nth)
2512 ELSE IF ( itype .EQ. 4 )
THEN
2514 IF ( otype .EQ. 1 )
THEN
2517 IF ( ptloc(1,j) .LT. 0. ) &
2518 ptloc(1,j) = ptloc(1,j) + 360.
2519 WRITE (ndstab,940) time, m2km*ptloc(2,j), &
2520 m2km*ptloc(1,j), ptnme(j), npart, depth, &
2521 wao(j), udir, cao(j), cdir
2523 WRITE (ndstab,943) time, m2km*ptloc(1,j), &
2524 m2km*ptloc(2,j), ptnme(j), npart, depth, &
2525 wao(j), udir, cao(j), cdir
2529 WRITE (ndstab,942) i, xpart(:,i)
2532 ELSEIF ( otype .GE. 2 )
THEN
2533 CALL w3bull (npart, xpart, dimxp, uabs, &
2534 udir, j, iout, timev )
2537 x = m2km * ptloc(1,j)
2538 y = m2km * ptloc(2,j)
2540 x = mod( x+720. , 360. )
2541 IF ( x .LE. 180. )
THEN
2549 IF ( y .GE. 0. )
THEN
2559 IF ( otype .EQ. 2 .OR. otype .EQ. 4 )
THEN
2560 ndsbul=ndstab + (j - 1)
2562 ndscbul=ndstab + (j - 1) + nopts
2564 IF (iout .EQ. 1)
THEN
2565 WRITE(hstr,
'(I2,1X,A)') timev(2)/10000, &
2567 WRITE (ndsbul,970) ptnme(j), y, idlat, x, &
2568 idlon, gname, timev(1), &
2574 WRITE (ndscbul,960) ptnme(j), y, idlat, &
2575 x, idlon, gname, timev(1), hstr
2580 WRITE (ndsbul,973) ascbline
2582 WRITE (ndscbul,963) cascbline
2585 IF ( otype .EQ. 3 .OR. otype .EQ. 4 )
THEN
2587 IF ( ndsbul .GT. 0 ) icsv = ndsbul
2589 IF ( ndscbul .GT. 0 ) icsv = ndscbul
2591 ndscsv = ndstab + (j - 1) + icsv
2592 WRITE (ndscsv,
'(A664)') csvbline
2606 900
FORMAT (i8.8,i7.6)
2607 901
FORMAT (
'''',a10,
'''',2f7.2,f10.1,2(f7.2,f6.1))
2608 701
FORMAT (
'''',a10,
'''',2(f8.1,
'E3'),f10.1,2(f7.2,f6.1))
2611 910
FORMAT (/15x,
' Water depth :',f7.1,
' (m)'/ &
2612 15x,
' Wind speed :',f8.2,
' (m/s)')
2613 911
FORMAT ( 15x,
' Wind direction :',f7.1,
' (degr)')
2614 912
FORMAT ( 15x,
' Air-sea temp. dif.:',f7.1,
' (degr)'/ &
2615 15x,
' Current speed :',f8.2,
' (m/s)')
2616 913
FORMAT ( 15x,
' Current direction :',f7.1,
' (degr)')
2617 914
FORMAT ( 15x,
' Wave height :',f8.2,
' (m)'/ &
2618 15x,
' Mean wave length :',f6.0,
' (m)'/ &
2619 15x,
' Mean wave period :',f7.1,
' (s)'/ &
2620 15x,
' Mean wave direct. :',f7.1,
' (degr)'/ &
2621 15x,
' Direct. spread :',f7.1,
' (degr)'/)
2622 920
FORMAT (
' Time : ',a/ &
2623 ' Location : ',a,
' (',2f8.2,
' )'/ &
2624 ' depth : ',f7.1,
' m'/ &
2625 ' U* : ',f9.3,
' m/s'/ &
2626 ' U10 : ',f7.1,
' m/s'/ &
2627 ' Dir U10 : ',f7.1,
' degr'// &
2628 ' f f/fp F(f) theta spr alpha '/ &
2629 ' (Hz) (-) (m2s) (deg) (deg) (-) '/ &
2630 ' --------------------------------------------------')
2631 720
FORMAT (
' Time : ',a/ &
2632 ' Location : ',a,
' (',2(f8.1,
'E3'),
' )'/ &
2633 ' depth : ',f7.1,
' m'/ &
2634 ' U* : ',f9.3,
' m/s'/ &
2635 ' U10 : ',f7.1,
' m/s'/ &
2636 ' Dir U10 : ',f7.1,
' degr'// &
2637 ' f f/fp F(f) theta spr alpha '/ &
2638 ' (Hz) (-) (m2s) (deg) (deg) (-) '/ &
2639 ' --------------------------------------------------')
2640 921
FORMAT (1x,f8.5,f7.3,e11.3,2f8.1,f8.4)
2641 922
FORMAT (
' '/
' ')
2643 940
FORMAT (1x,i8.8,1x,i6.6,2f8.3,2x,
'''',a10,
'''', &
2644 1x,i3,f7.1,f5.1,f6.1,f5.2,f6.1)
2645 943
FORMAT (1x,i8.8,1x,i6.6,2(f8.1,
'E3'),2x,
'''',a10,
'''', &
2646 1x,i3,f7.1,f5.1,f6.1,f5.2,f6.1)
2647 941
FORMAT (
' hs tp lp theta sp wf')
2648 942
FORMAT (i3,3f8.2,2f9.2,10f7.2)
2652 960
FORMAT (
'Location : ',a,
' (',f5.2,a,1x,f6.2,a,
')'/ &
2654 'Cycle : ',i8,1x,a// &
2655 'DDHH HS SS PP DDD SS PP DDD SS PP DDD', &
2656 ' SS PP DDD SS PP DDD SS PP DDD')
2657 961
FORMAT (
'----------------------------------------', &
2658 '---------------------------')
2662 970
FORMAT (
' Location : ',a,
' (',f5.2,a,1x,f6.2,a,
')'/ &
2664 ' Cycle : ',i8,1x,a)
2665 971
FORMAT (
' +-------+-----------+-----------------+', &
2666 '-----------------+-----------------+----', &
2667 '-------------+-----------------+--------', &
2669 972
FORMAT (
' | day & | Hst n x | Hs Tp dir |', &
2675 ' | hour | (m) - - | (m) (s) (d) |', &
2684 ' Date Time d Uc Dir. U10 Dir. '/ &
2685 ' h m s (m) (m/s) (d.N) (m/s) (d.N) '/ &
2686 ' ---------------------------------------------------------')
2688 ' Date Time Hs L Tr Dir. Spr. ', &
2689 ' fp p_dir p_spr'/ &
2690 ' h m s (m) (m) (s) (d.N) (deg)', &
2691 ' (Hz) (d.N) (deg)'/ &
2692 ' -------------------------------------------------------', &
2693 '-----------------------')
2695 ' Date Time U* E* fp* Cd alpha'/&
2696 ' h m s (m/s) (-) (-) *1000 *100'/ &
2697 ' --------------------------------------------------------------')
2699 ' Date Time U10 E* fp* Cd alpha'/&
2700 ' h m s (m/s) (-) (-) *1000 *100'/ &
2701 ' --------------------------------------------------------------')
2703 ' Date Time U10 Dir. Hs H* cp/U ', &
2705 ' (m/s) (d.N) (m) (-) (-) ', &
2707 ' --------------------------------------------------', &
2708 '---------------------')
2710 ' Time U10 Dir. Hs Tp '/ &
2711 ' yr mth dy h (m/s) (d.N) (m) (s) '/ &
2712 ' ----------------------------------')
2713 1910
FORMAT (
' '/
' ' )
2714 1911
FORMAT (
' Time : ',a// &
2715 ' Long. Lat. d Uc Dir. U10 Dir. '/ &
2716 ' (m) (m/s) (d.N) (m/s) (d.N) '/ &
2717 ' --------------------------------------------------------')
2718 1912
FORMAT (
' Time : ',a// &
2719 ' Long. Lat. Hs L Tr Dir. Spr. ', &
2720 ' fp p_dir p_spr'/ &
2721 ' (m) (m) (s) (d.N) (deg)', &
2722 ' (Hz) (d.N) (deg)'/ &
2723 ' ------------------------------------------------------', &
2724 '-----------------------')
2725 1711
FORMAT (
' Time : ',a// &
2726 ' X Y d Uc Dir. U10 Dir. '/ &
2727 ' (m) (m) (m) (m/s) (d.N) (m/s) (d.N) '/ &
2728 ' ----------------------------------------------------------')
2729 1712
FORMAT (
' Time : ',a// &
2730 ' X Y Hs L Tr Dir. Spr. ', &
2731 ' fp p_dir p_spr'/ &
2732 ' (m) (m)) (m) (m) (s) (d.N) (deg)', &
2733 ' (Hz) (d.N) (deg)'/ &
2734 ' ------------------------------------------------------', &
2735 '-------------------------')
2736 1913
FORMAT (
' Time : ',a// &
2737 ' X* Y* U* E* fp* Cd alpha'/&
2738 ' (-) (-) (m/s) (-) (-) *1000 *100'/ &
2739 ' --------------------------------------------------------------')
2740 1914
FORMAT (
' Time : ',a// &
2741 ' X* Y* U10 E* fp* Cd alpha'/ &
2742 ' (-) (-) (m/s) (-) (-) *1000 *100 '/ &
2743 ' --------------------------------------------------------------')
2744 1915
FORMAT (
' Time : ',a// &
2745 ' Long. Lat. U10 Dir. Hs H* cp/U ', &
2747 ' (m/s) (d.N) (m) (-) (-) ', &
2749 ' -------------------------------------------------', &
2750 '---------------------')
2751 1715
FORMAT (
' Time : ',a// &
2752 ' X Y U10 Dir. Hs H* cp/U ', &
2754 ' (m) (m) (m/s) (d.N) (m) (-) (-) ', &
2756 ' ---------------------------------------------------', &
2757 '---------------------')
2758 1916
FORMAT (
' Time : ',a// &
2759 ' Long. Lat. U10 Dir. Hs Tp '/ &
2760 ' (m/s) (d.N) (m) (s) '/ &
2761 '-----------------------------------------------')
2762 1716
FORMAT (
' Time : ',a// &
2763 ' X Y U10 Dir. Hs Tp '/ &
2764 ' (m) (m) (m/s) (d.N) (m) (s) '/ &
2765 '---------------------------------------------------')
2766 1921
FORMAT ( 2x,i8.8,i3,2(1x,i2.2),f10.1,f6.2,f7.1,f6.2,f7.1)
2767 1922
FORMAT ( 2x,i8.8,i3,2(1x,i2.2),f9.3,f7.1,f7.2,f7.1,f7.2, &
2769 1923
FORMAT ( 2x,i8.8,i3,2(1x,i2.2),f8.4,2e11.3,2f7.3)
2770 1924
FORMAT ( 2x,i8.8,i3,2(1x,i2.2),f7.1,2e11.3,2f7.3)
2771 1925
FORMAT ( 2x,i8.8,i3,2(1x,i2.2),f7.2,f7.1,2f7.2,2f8.2,f7.1)
2772 1926
FORMAT ( 2x,i4,3(1x,i2),f6.2,1x,i3,2f6.2)
2773 1931
FORMAT ( 2x,2f8.3,f10.1,f6.2,f7.1,f6.2,f7.1)
2774 1932
FORMAT ( 2x,2f8.3,f9.3,f7.1,f7.2,f7.1,f7.2, &
2776 1731
FORMAT ( 2x,2(f7.1,
'E3'),f10.1,f6.2,f7.1,f6.2,f7.1)
2777 1732
FORMAT ( 2x,2(f7.1,
'E3'),f9.3,f7.1,f7.2,f7.1,f7.2, &
2779 1933
FORMAT ( 2x,2(f7.1,
'E4'),f8.4,2e11.3,2f7.3)
2780 1934
FORMAT ( 2x,2f9.1,f7.1,2e11.3,2f7.3)
2781 1935
FORMAT ( 2x,2f8.3,f7.2,f7.1,2f7.2,2f8.2,f7.1)
2782 1735
FORMAT ( 2x,2(f7.1,
'E3'),f7.2,f7.1,2f7.2,2f8.2,f7.1)
2783 1936
FORMAT ( 2x,2f8.3,f6.2,1x,i3,2f6.2)
2784 1736
FORMAT ( 2x,2(f8.2,
'E3'),f6.2,1x,i3,2f6.2)
2786 2920
FORMAT (
' Time : ',a/ &
2787 ' Location : ',a,
' (',2f8.2,
' )'/ &
2788 ' depth : ',f7.1,
' m'/ &
2789 ' U* : ',f9.3,
' m/s'/ &
2790 ' U10 : ',f7.1,
' m/s'/)
2791 2720
FORMAT (
' Time : ',a/ &
2792 ' Location : ',a,
' (',2(f8.1,
'E3'),
' )'/ &
2793 ' depth : ',f7.1,
' m'/ &
2794 ' U* : ',f9.3,
' m/s'/ &
2795 ' U10 : ',f7.1,
' m/s'/)
2796 2921
FORMAT (
' f E ', &
2797 ' Sin Snl Sds Sbt Sice Stot'/ &
2799 ' (m2) (m2) (m2) (m2) (m2) (m2)'/ &
2800 ' ------------------------------------------', &
2801 '-------------------------------------------')
2802 2922
FORMAT (
' f* E* ', &
2803 ' Sin* Snl* Sds* Sbt* Sice* Stot*'/ &
2805 ' (-) (-) (-) (-) (-) (-)'/ &
2806 ' ------------------------------------------', &
2807 '-------------------------------------------')
2808 2923
FORMAT (
' f/fp E ', &
2809 ' Sin Snl Sds Sbt Sice Stot'/ &
2811 ' (m2) (m2) (m2) (m2) (m2) (m2)'/ &
2812 ' ------------------------------------------', &
2813 '-------------------------------------------')
2814 2924
FORMAT (
' f/fp E* ', &
2815 ' Sin* Snl* Sds* Sbt* Sice* Stot*'/ &
2817 ' (-) (-) (-) (-) (-) (-)'/ &
2818 ' ------------------------------------------', &
2819 '-------------------------------------------')
2820 2925
FORMAT (
' f E ', &
2821 ' Tini Tnli Tdsi Tbti Ticei Ttoti'/ &
2823 ' (1/s) (1/s) (1/s) (1/s) (1/s) (1/s)'/ &
2824 ' ----------------------------------------', &
2825 '-------------------------------------------')
2826 2926
FORMAT (
' f* E* ', &
2827 ' Tini* Tnli* Tdsi* Tbti* Ticei* Ttoti*'/ &
2829 ' (-) (-) (-) (-) (-) (-)'/ &
2830 ' ----------------------------------------', &
2831 '-------------------------------------------')
2832 2927
FORMAT (
' f/fp E ', &
2833 ' Tini Tnli Tdsi Tbti Ticei Ttoti'/ &
2835 ' (1/s) (1/s) (1/s) (1/s) (1/s) (1/s)'/ &
2836 ' ----------------------------------------', &
2837 '-------------------------------------------')
2838 2928
FORMAT (
' f/fp E* ', &
2839 ' Tini* Tnli* Tdsi* Tbti* Ticei* Ttoti*'/ &
2841 ' (-) (-) (-) (-) (-) (-)'/ &
2842 ' ----------------------------------------', &
2843 '-------------------------------------------')
2844 2930
FORMAT (1x,f6.4,2x,7e11.3)
2845 2931
FORMAT (1x,f6.4,7e11.3)
2846 2940
FORMAT (
' '/
' ' )
2849 9000
FORMAT (
' TEST W3EXPO : FLAGS :',40l2)
2850 9001
FORMAT (
' TEST W3EXPO : ITPYE :',i4/ &
2853 ' SCALE1 :',e10.3/ &
2854 ' SCALE2 :',e10.3/ &
2856 9002
FORMAT (
' TEST W3EXPO : OUTPUT POINT : ',a)
2857 9010
FORMAT (
' TEST W3EXPO : DEPTH =',f7.1,
' IK, T, K, CG :')
2858 9011
FORMAT (
' ',i3,f8.2,f8.4,f8.2)