370 INTEGER,
PRIVATE :: ISTAT
385 REAL,
POINTER ::
cg(:,:),
wn(:,:)
411 REAL,
POINTER :: xhs(:), xwlm(:), xt02(:), xt0m1(:), &
412 xt01 (:), xfp0(:), xthm(:), &
414 xhsig(:), xstmaxe(:), xstmaxd(:), &
415 xhmaxe(:), xhcmaxe(:), xhmaxd(:), &
416 xhcmaxd(:), xqp(:), xwbt(:), &
423 REAL,
POINTER :: xef(:,:), xth1m(:,:), xsth1m(:,:),&
424 xth2m(:,:), xsth2m(:,:)
434 REAL,
POINTER :: xphs(:,:), xptp(:,:), xplp(:,:), &
435 xpdir(:,:), xpsi(:,:), xpws(:,:), &
436 xpwst(:), xpnr(:), xpgw(:,:), &
437 xpthp0(:,:), xpqp(:,:), xppe(:,:), &
438 xpsw(:,:), xptm1(:,:), xpt1(:,:), &
446 REAL,
POINTER :: xcharn(:), xcge(:), xphiaw(:), &
447 xtauwix(:), xtauwiy(:), xtauwnx(:), &
448 xtauwny(:), xwhitecap(:,:), xtws(:)
459 REAL,
POINTER :: xsxx(:), xsyy(:), xsxy(:), xtauox(:),&
460 xtauoy(:), xbhd(:), xphioc(:), &
461 xtusx(:), xtusy(:), xussx(:), &
462 xussy(:), xtauocx(:), xtauocy(:), &
463 xprms(:), xtpms(:), xphice(:), &
465 REAL,
POINTER :: xp2sms(:,:), xus3d(:,:), xussp(:,:)
472 REAL,
POINTER :: xaba(:), xabd(:), xuba(:), xubd(:), &
473 xbedforms(:,:), xphibbl(:), &
480 REAL,
POINTER :: xmssx(:), xmssy(:), xmssd(:), &
481 xmscx(:), xmscy(:), xmscd(:), xqkk(:), &
482 xskew(:), xembia1(:), xembia2(:)
488 REAL,
POINTER :: xdtdyn(:), xfcut(:), xcflxymax(:), &
489 xcflthmax(:), xcflkmax(:)
494 REAL,
POINTER :: xusero(:,:)
554 INTEGER :: nbfield, pdlib_mpi_type
575 REAL,
POINTER ::
cg(:,:),
wn(:,:)
703 SUBROUTINE w3naux ( NDSE, NDST )
767 INTEGER,
INTENT(IN) :: NDSE, NDST
774 INTEGER,
SAVE :: IENT = 0
775 CALL strace (ient,
'W3NAUX')
781 IF (
ngrids .EQ. -1 )
THEN
790 check_alloc_status( istat )
801 wadats(i)%FLCOLD = .false.
802 wadats(i)%FLIWND = .false.
804 wadats(i)%AINIT2 = .false.
805 wadats(i)%FL_ALL = .false.
807 wadats(i)%NLINIT = .false.
819 1001
FORMAT (/
' *** ERROR W3NAUX : NGRIDS NOT YET SET *** '/ &
821 ' RUN W3NMOD FIRST'/)
824 9000
FORMAT (
' TEST W3NAUX : SETTING UP FOR ',i4,
' GRIDS')
845 SUBROUTINE w3dima ( IMOD, NDSE, NDST, D_ONLY )
941 INTEGER,
INTENT(IN) :: IMOD, NDSE, NDST
942 LOGICAL,
INTENT(IN),
OPTIONAL :: D_ONLY
947 INTEGER :: JGRID, NXXX, NSEAL_tmp
949 INTEGER,
SAVE :: IENT = 0
950 CALL strace (ient,
'W3DIMA')
958 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 0')
960 IF (
PRESENT(d_only) )
THEN
966 IF (
ngrids .EQ. -1 )
THEN
971 IF ( imod.LT.1 .OR. imod.GT.
nadata )
THEN
972 WRITE (ndse,1002) imod,
nadata
976 IF (
wadats(imod)%AINIT )
THEN
982 WRITE (ndst,9000) imod
986 IF ( jgrid .NE. imod )
CALL w3setg ( imod, ndse, ndst )
988 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 1')
994 CALL w3seta ( imod, ndse, ndst )
1004 ALLOCATE (
wadats(imod)%DW(0:
nsea) , stat=istat )
1005 check_alloc_status( istat )
1010 check_alloc_status( istat )
1017 check_alloc_status( istat )
1021 check_alloc_status( istat )
1023 wadats(imod)%TAUADIR(:)=0.
1025 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 2')
1054 check_alloc_status( istat )
1059 wadats(imod)%T0M1 = undef
1064 wadats(imod)%THP0 = undef
1065 wadats(imod)%HSIG = undef
1066 wadats(imod)%STMAXE = undef
1067 wadats(imod)%STMAXD = undef
1068 wadats(imod)%HMAXE = undef
1069 wadats(imod)%HMAXD = undef
1070 wadats(imod)%HCMAXE = undef
1071 wadats(imod)%HCMAXD = undef
1074 wadats(imod)%WNMEAN = undef
1076 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 3')
1083 IF (
e3df(1,1).GT.0 )
THEN
1086 check_alloc_status( istat )
1088 IF (
e3df(1,2).GT.0 )
THEN
1091 check_alloc_status( istat )
1093 IF (
e3df(1,3).GT.0 )
THEN
1096 check_alloc_status( istat )
1098 IF (
e3df(1,4).GT.0 )
THEN
1101 check_alloc_status( istat )
1103 IF (
e3df(1,5).GT.0 )
THEN
1106 check_alloc_status( istat )
1109 IF (
e3df(1,1).GT.0 )
wadats(imod)%EF = undef
1110 IF (
e3df(1,2).GT.0 )
wadats(imod)%TH1M = undef
1111 IF (
e3df(1,3).GT.0 )
wadats(imod)%STH1M = undef
1112 IF (
e3df(1,4).GT.0 )
wadats(imod)%TH2M = undef
1113 IF (
e3df(1,5).GT.0 )
wadats(imod)%STH2M = undef
1115 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 4')
1137 check_alloc_status( istat )
1142 wadats(imod)%PDIR = undef
1145 wadats(imod)%PWST = undef
1147 wadats(imod)%PTHP0 = undef
1152 wadats(imod)%PTM1 = undef
1171 check_alloc_status( istat )
1173 wadats(imod)%CHARN = undef
1176 wadats(imod)%PHIAW = undef
1177 wadats(imod)%TAUWIX = undef
1178 wadats(imod)%TAUWIY = undef
1179 wadats(imod)%TAUWNX = undef
1180 wadats(imod)%TAUWNY = undef
1181 wadats(imod)%WHITECAP = undef
1183 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 5')
1205 check_alloc_status( istat )
1210 IF (
p2msf(1).GT.0 )
THEN
1212 check_alloc_status( istat )
1214 IF (
us3df(1).GT.0 )
THEN
1216 check_alloc_status( istat )
1218 IF (
usspf(1).GT.0 )
THEN
1220 check_alloc_status( istat )
1226 wadats(imod)%TAUOX = undef
1227 wadats(imod)%TAUOY = undef
1229 wadats(imod)%PHIOC = undef
1230 wadats(imod)%TUSX = undef
1231 wadats(imod)%TUSY = undef
1232 wadats(imod)%USSX = undef
1233 wadats(imod)%USSY = undef
1234 wadats(imod)%TAUOCX = undef
1235 wadats(imod)%TAUOCY = undef
1236 wadats(imod)%PRMS = undef
1237 wadats(imod)%TPMS = undef
1238 wadats(imod)%PHICE = undef
1239 wadats(imod)%TAUICE = undef
1244 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 6')
1253 check_alloc_status( istat )
1259 wadats(imod)%BEDFORMS = undef
1260 wadats(imod)%PHIBBL = undef
1261 wadats(imod)%TAUBBL = undef
1263 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 7')
1273 check_alloc_status( istat )
1275 wadats(imod)%MSSX = undef
1276 wadats(imod)%MSSY = undef
1277 wadats(imod)%MSSD = undef
1278 wadats(imod)%MSCX = undef
1279 wadats(imod)%MSCY = undef
1280 wadats(imod)%MSCD = undef
1282 wadats(imod)%SKEW = undef
1283 wadats(imod)%EMBIA1 = undef
1284 wadats(imod)%EMBIA2 = undef
1285 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 8')
1295 check_alloc_status( istat )
1297 wadats(imod)%DTDYN = undef
1298 wadats(imod)%FCUT = undef
1299 wadats(imod)%CFLXYMAX = undef
1300 wadats(imod)%CFLTHMAX = undef
1301 wadats(imod)%CFLKMAX = undef
1303 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 9')
1308 check_alloc_status( istat )
1310 wadats(imod)%USERO = undef
1312 ALLOCATE (
wadats(imod)%WN(0:
nk+1,0:
nsea), stat=istat )
1313 check_alloc_status( istat )
1316 ALLOCATE (
wadats(imod)%IC3WN_R(0:
nk+1,0:300), stat=istat )
1317 check_alloc_status( istat )
1318 ALLOCATE (
wadats(imod)%IC3WN_I(0:
nk+1,0:300), stat=istat )
1319 check_alloc_status( istat )
1321 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 10')
1325 ALLOCATE (
wadats(imod)%CG(0:
nk+1,0:
nsea), stat=istat )
1326 check_alloc_status( istat )
1329 ALLOCATE (
wadats(imod)%IC3CG(0:
nk+1,0:300), stat=istat )
1330 check_alloc_status( istat )
1340 check_alloc_status( istat )
1351 check_alloc_status( istat )
1360 check_alloc_status( istat )
1367 check_alloc_status( istat )
1370 ALLOCATE (
wadats(imod)%ATRNX(
ny*
nx,-1:1) , &
1371 wadats(imod)%ATRNY(
ny*
nx,-1:1) , stat=istat )
1372 check_alloc_status( istat )
1394 check_alloc_status( istat )
1408 check_alloc_status( istat )
1412 check_alloc_status( istat )
1419 check_alloc_status( istat )
1429 check_alloc_status( istat )
1435 check_alloc_status( istat )
1446 check_alloc_status( istat )
1452 check_alloc_status( istat )
1456 wadats(imod)%AINIT = .true.
1458 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 11')
1467 CALL w3seta ( imod, ndse, ndst )
1469 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA 12')
1485 IF ( jgrid .NE. imod )
CALL w3setg ( jgrid, ndse, ndst )
1487 call print_memcheck(memunit,
'memcheck_____:'//
' W3DIMA END')
1493 1001
FORMAT (/
' *** ERROR W3DIMA : GRIDS NOT INITIALIZED *** '/ &
1494 ' RUN W3NMOD FIRST '/)
1495 1002
FORMAT (/
' *** ERROR W3DIMA : ILLEGAL MODEL NUMBER *** '/ &
1498 1003
FORMAT (/
' *** ERROR W3DIMA : ARRAY(S) ALREADY ALLOCATED *** ')
1501 9000
FORMAT (
' TEST W3DIMA : MODEL ',i4)
1502 9001
FORMAT (
' TEST W3DIMA : ARRAYS ALLOCATED')
1503 9002
FORMAT (
' TEST W3DIMA : POINTERS RESET')
1504 9003
FORMAT (
' TEST W3DIMA : DIMENSIONS STORED')
1522 SUBROUTINE w3xdma ( IMOD, NDSE, NDST, OUTFLAGS )
1558 INTEGER,
INTENT(IN) :: IMOD, NDSE, NDST
1559 LOGICAL,
INTENT(IN) :: OUTFLAGS(NOGRP,NGRPP)
1564 INTEGER :: JGRID, NXXX, I
1566 INTEGER,
SAVE :: IENT = 0
1567 CALL strace (ient,
'W3XDMA')
1575 IF (
ngrids .EQ. -1 )
THEN
1580 IF ( imod.LT.1 .OR. imod.GT.
nadata )
THEN
1581 WRITE (ndse,1002) imod,
nadata
1585 IF (
wadats(imod)%AINIT2 )
THEN
1591 WRITE (ndst,9000) imod
1595 IF ( jgrid .NE. imod )
CALL w3setg ( imod, ndse, ndst )
1602 IF ( outflags( 2, 1) )
THEN
1603 ALLOCATE (
wadats(imod)%XHS(nxxx), stat=istat )
1604 check_alloc_status( istat )
1606 ALLOCATE (
wadats(imod)%XHS(1), stat=istat )
1607 check_alloc_status( istat )
1610 IF ( outflags( 2, 2) )
THEN
1611 ALLOCATE (
wadats(imod)%XWLM(nxxx), stat=istat )
1612 check_alloc_status( istat )
1614 ALLOCATE (
wadats(imod)%XWLM(1), stat=istat )
1615 check_alloc_status( istat )
1618 IF ( outflags( 2, 3) )
THEN
1619 ALLOCATE (
wadats(imod)%XT02(nxxx), stat=istat )
1620 check_alloc_status( istat )
1622 ALLOCATE (
wadats(imod)%XT02(1), stat=istat )
1623 check_alloc_status( istat )
1626 IF ( outflags( 2, 4) )
THEN
1627 ALLOCATE (
wadats(imod)%XT0M1(nxxx), stat=istat )
1628 check_alloc_status( istat )
1630 ALLOCATE (
wadats(imod)%XT0M1(1), stat=istat )
1631 check_alloc_status( istat )
1634 IF ( outflags( 2, 5) )
THEN
1635 ALLOCATE (
wadats(imod)%XT01 (nxxx), stat=istat )
1636 check_alloc_status( istat )
1638 ALLOCATE (
wadats(imod)%XT01 (1), stat=istat )
1639 check_alloc_status( istat )
1642 IF ( outflags( 2, 6) .OR. outflags( 2,18) )
THEN
1644 ALLOCATE (
wadats(imod)%XFP0(nxxx), stat=istat )
1645 check_alloc_status( istat )
1647 ALLOCATE (
wadats(imod)%XFP0(1), stat=istat )
1648 check_alloc_status( istat )
1651 IF ( outflags( 2, 7) )
THEN
1652 ALLOCATE (
wadats(imod)%XTHM(nxxx), stat=istat )
1653 check_alloc_status( istat )
1655 ALLOCATE (
wadats(imod)%XTHM(1), stat=istat )
1656 check_alloc_status( istat )
1659 IF ( outflags( 2, 8) )
THEN
1660 ALLOCATE (
wadats(imod)%XTHS(nxxx), stat=istat )
1661 check_alloc_status( istat )
1663 ALLOCATE (
wadats(imod)%XTHS(1), stat=istat )
1664 check_alloc_status( istat )
1667 IF ( outflags( 2, 9) )
THEN
1668 ALLOCATE (
wadats(imod)%XTHP0(nxxx), stat=istat )
1669 check_alloc_status( istat )
1671 ALLOCATE (
wadats(imod)%XTHP0(1), stat=istat )
1672 check_alloc_status( istat )
1675 IF ( outflags( 2, 10) )
THEN
1676 ALLOCATE (
wadats(imod)%XHSIG(nxxx), stat=istat )
1677 check_alloc_status( istat )
1679 ALLOCATE (
wadats(imod)%XHSIG(1), stat=istat )
1680 check_alloc_status( istat )
1683 IF ( outflags( 2, 11) )
THEN
1684 ALLOCATE (
wadats(imod)%XSTMAXE(nxxx) )
1686 ALLOCATE (
wadats(imod)%XSTMAXE(1) )
1689 IF ( outflags( 2, 12) )
THEN
1690 ALLOCATE (
wadats(imod)%XSTMAXD(nxxx) )
1692 ALLOCATE (
wadats(imod)%XSTMAXD(1) )
1695 IF ( outflags( 2, 13) )
THEN
1696 ALLOCATE (
wadats(imod)%XHMAXE(nxxx) )
1698 ALLOCATE (
wadats(imod)%XHMAXE(1) )
1701 IF ( outflags( 2, 14) )
THEN
1702 ALLOCATE (
wadats(imod)%XHCMAXE(nxxx) )
1704 ALLOCATE (
wadats(imod)%XHCMAXE(1) )
1708 IF ( outflags( 2, 15) )
THEN
1709 ALLOCATE (
wadats(imod)%XHMAXD(nxxx) )
1711 ALLOCATE (
wadats(imod)%XHMAXD(1) )
1714 IF ( outflags( 2, 16) )
THEN
1715 ALLOCATE (
wadats(imod)%XHCMAXD(nxxx) )
1717 ALLOCATE (
wadats(imod)%XHCMAXD(1) )
1720 IF ( outflags( 2, 17) )
THEN
1721 ALLOCATE (
wadats(imod)%XWBT (nxxx), stat=istat )
1722 check_alloc_status( istat )
1724 ALLOCATE (
wadats(imod)%XWBT (1), stat=istat )
1725 check_alloc_status( istat )
1728 IF ( outflags( 2, 19) )
THEN
1729 ALLOCATE (
wadats(imod)%XWNMEAN(nxxx), stat=istat )
1730 check_alloc_status( istat )
1732 ALLOCATE (
wadats(imod)%XWNMEAN(1), stat=istat )
1733 check_alloc_status( istat )
1737 wadats(imod)%XWLM = undef
1738 wadats(imod)%XT02 = undef
1739 wadats(imod)%XT0M1 = undef
1740 wadats(imod)%XT01 = undef
1741 wadats(imod)%XFP0 = undef
1742 wadats(imod)%XTHM = undef
1743 wadats(imod)%XTHS = undef
1744 wadats(imod)%XTHP0 = undef
1745 wadats(imod)%XHSIG = undef
1746 wadats(imod)%XSTMAXE= undef
1747 wadats(imod)%XSTMAXD= undef
1748 wadats(imod)%XHMAXE = undef
1749 wadats(imod)%XHMAXD = undef
1750 wadats(imod)%XHCMAXE= undef
1751 wadats(imod)%XHCMAXD= undef
1752 wadats(imod)%XWBT = undef
1753 wadats(imod)%XWNMEAN= undef
1755 IF ( outflags( 3, 1) )
THEN
1756 ALLOCATE (
wadats(imod)%XEF(nxxx,
e3df(2,1):
e3df(3,1)), stat=istat )
1757 check_alloc_status( istat )
1759 ALLOCATE (
wadats(imod)%XEF(1,1), stat=istat )
1760 check_alloc_status( istat )
1763 IF ( outflags( 3, 2) )
THEN
1764 ALLOCATE (
wadats(imod)%XTH1M(nxxx,
e3df(2,2):
e3df(3,2)), stat=istat )
1765 check_alloc_status( istat )
1767 ALLOCATE (
wadats(imod)%XTH1M(1,1), stat=istat )
1768 check_alloc_status( istat )
1771 IF ( outflags( 3, 3) )
THEN
1772 ALLOCATE (
wadats(imod)%XSTH1M(nxxx,
e3df(2,3):
e3df(3,3)), stat=istat )
1773 check_alloc_status( istat )
1775 ALLOCATE (
wadats(imod)%XSTH1M(1,1), stat=istat )
1776 check_alloc_status( istat )
1779 IF ( outflags( 3, 4) )
THEN
1780 ALLOCATE (
wadats(imod)%XTH2M(nxxx,
e3df(2,4):
e3df(3,4)), stat=istat )
1781 check_alloc_status( istat )
1783 ALLOCATE (
wadats(imod)%XTH2M(1,1), stat=istat )
1784 check_alloc_status( istat )
1787 IF ( outflags( 3, 5) )
THEN
1788 ALLOCATE (
wadats(imod)%XSTH2M(nxxx,
e3df(2,5):
e3df(3,5)), stat=istat )
1789 check_alloc_status( istat )
1791 ALLOCATE (
wadats(imod)%XSTH2M(1,1), stat=istat )
1792 check_alloc_status( istat )
1796 wadats(imod)%XTH1M = undef
1797 wadats(imod)%XSTH1M = undef
1798 wadats(imod)%XTH2M = undef
1799 wadats(imod)%XSTH2M = undef
1801 IF ( outflags( 4, 1) )
THEN
1802 ALLOCATE (
wadats(imod)%XPHS(nxxx,0:
noswll), stat=istat )
1803 check_alloc_status( istat )
1805 ALLOCATE (
wadats(imod)%XPHS(1,1), stat=istat )
1806 check_alloc_status( istat )
1809 IF ( outflags( 4, 2) )
THEN
1810 ALLOCATE (
wadats(imod)%XPTP(nxxx,0:
noswll), stat=istat )
1811 check_alloc_status( istat )
1813 ALLOCATE (
wadats(imod)%XPTP(1,1), stat=istat )
1814 check_alloc_status( istat )
1817 IF ( outflags( 4, 3) )
THEN
1818 ALLOCATE (
wadats(imod)%XPLP(nxxx,0:
noswll), stat=istat )
1819 check_alloc_status( istat )
1821 ALLOCATE (
wadats(imod)%XPLP(1,1), stat=istat )
1822 check_alloc_status( istat )
1825 IF ( outflags( 4, 4) )
THEN
1826 ALLOCATE (
wadats(imod)%XPDIR(nxxx,0:
noswll), stat=istat )
1827 check_alloc_status( istat )
1829 ALLOCATE (
wadats(imod)%XPDIR(1,1), stat=istat )
1830 check_alloc_status( istat )
1833 IF ( outflags( 4, 5) )
THEN
1834 ALLOCATE (
wadats(imod)%XPSI(nxxx,0:
noswll), stat=istat )
1835 check_alloc_status( istat )
1837 ALLOCATE (
wadats(imod)%XPSI(1,1), stat=istat )
1838 check_alloc_status( istat )
1841 IF ( outflags( 4, 6) )
THEN
1842 ALLOCATE (
wadats(imod)%XPWS(nxxx,0:
noswll), stat=istat )
1843 check_alloc_status( istat )
1845 ALLOCATE (
wadats(imod)%XPWS(1,1), stat=istat )
1846 check_alloc_status( istat )
1849 IF ( outflags( 4, 7) )
THEN
1850 ALLOCATE (
wadats(imod)%XPTHP0(nxxx,0:
noswll), stat=istat )
1851 check_alloc_status( istat )
1853 ALLOCATE (
wadats(imod)%XPTHP0(1,1), stat=istat )
1854 check_alloc_status( istat )
1857 IF ( outflags( 4, 8) )
THEN
1858 ALLOCATE (
wadats(imod)%XPQP(nxxx,0:
noswll), stat=istat )
1859 check_alloc_status( istat )
1861 ALLOCATE (
wadats(imod)%XPQP(1,1), stat=istat )
1862 check_alloc_status( istat )
1865 IF ( outflags( 4, 9) )
THEN
1866 ALLOCATE (
wadats(imod)%XPPE(nxxx,0:
noswll), stat=istat )
1867 check_alloc_status( istat )
1869 ALLOCATE (
wadats(imod)%XPPE(1,1), stat=istat )
1870 check_alloc_status( istat )
1873 IF ( outflags( 4,10) )
THEN
1874 ALLOCATE (
wadats(imod)%XPGW(nxxx,0:
noswll), stat=istat )
1875 check_alloc_status( istat )
1877 ALLOCATE (
wadats(imod)%XPGW(1,1), stat=istat )
1878 check_alloc_status( istat )
1881 IF ( outflags( 4,11) )
THEN
1882 ALLOCATE (
wadats(imod)%XPSW(nxxx,0:
noswll), stat=istat )
1883 check_alloc_status( istat )
1885 ALLOCATE (
wadats(imod)%XPSW(1,1), stat=istat )
1886 check_alloc_status( istat )
1889 IF ( outflags( 4,12) )
THEN
1890 ALLOCATE (
wadats(imod)%XPTM1(nxxx,0:
noswll), stat=istat )
1891 check_alloc_status( istat )
1893 ALLOCATE (
wadats(imod)%XPTM1(1,1), stat=istat )
1894 check_alloc_status( istat )
1897 IF ( outflags( 4,13) )
THEN
1898 ALLOCATE (
wadats(imod)%XPT1(nxxx,0:
noswll), stat=istat )
1899 check_alloc_status( istat )
1901 ALLOCATE (
wadats(imod)%XPT1(1,1), stat=istat )
1902 check_alloc_status( istat )
1905 IF ( outflags( 4,14) )
THEN
1906 ALLOCATE (
wadats(imod)%XPT2(nxxx,0:
noswll), stat=istat )
1907 check_alloc_status( istat )
1909 ALLOCATE (
wadats(imod)%XPT2(1,1), stat=istat )
1910 check_alloc_status( istat )
1913 IF ( outflags( 4,15) )
THEN
1914 ALLOCATE (
wadats(imod)%XPEP(nxxx,0:
noswll), stat=istat )
1915 check_alloc_status( istat )
1917 ALLOCATE (
wadats(imod)%XPEP(1,1), stat=istat )
1918 check_alloc_status( istat )
1921 IF ( outflags( 4,16) )
THEN
1922 ALLOCATE (
wadats(imod)%XPWST(nxxx), stat=istat )
1923 check_alloc_status( istat )
1925 ALLOCATE (
wadats(imod)%XPWST(1), stat=istat )
1926 check_alloc_status( istat )
1929 IF ( outflags( 4,17) )
THEN
1930 ALLOCATE (
wadats(imod)%XPNR(nxxx), stat=istat )
1931 check_alloc_status( istat )
1933 ALLOCATE (
wadats(imod)%XPNR(1), stat=istat )
1934 check_alloc_status( istat )
1937 wadats(imod)%XPHS = undef
1938 wadats(imod)%XPTP = undef
1939 wadats(imod)%XPLP = undef
1940 wadats(imod)%XPDIR = undef
1941 wadats(imod)%XPSI = undef
1942 wadats(imod)%XPWS = undef
1943 wadats(imod)%XPWST = undef
1944 wadats(imod)%XPNR = undef
1945 wadats(imod)%XPTHP0 = undef
1946 wadats(imod)%XPQP = undef
1947 wadats(imod)%XPPE = undef
1948 wadats(imod)%XPGW = undef
1949 wadats(imod)%XPSW = undef
1950 wadats(imod)%XPTM1 = undef
1951 wadats(imod)%XPT1 = undef
1952 wadats(imod)%XPT2 = undef
1953 wadats(imod)%XPEP = undef
1955 IF ( outflags( 5, 2) )
THEN
1956 ALLOCATE (
wadats(imod)%XCHARN(nxxx), stat=istat )
1957 check_alloc_status( istat )
1959 ALLOCATE (
wadats(imod)%XCHARN(1), stat=istat )
1960 check_alloc_status( istat )
1963 IF ( outflags( 5, 3) )
THEN
1964 ALLOCATE (
wadats(imod)%XCGE(nxxx), stat=istat )
1965 check_alloc_status( istat )
1967 ALLOCATE (
wadats(imod)%XCGE(1), stat=istat )
1968 check_alloc_status( istat )
1971 IF ( outflags( 5, 4) )
THEN
1972 ALLOCATE (
wadats(imod)%XPHIAW(nxxx), stat=istat )
1973 check_alloc_status( istat )
1975 ALLOCATE (
wadats(imod)%XPHIAW(1), stat=istat )
1976 check_alloc_status( istat )
1979 IF ( outflags( 5, 5) )
THEN
1980 ALLOCATE (
wadats(imod)%XTAUWIX(nxxx), stat=istat )
1981 check_alloc_status( istat )
1982 ALLOCATE (
wadats(imod)%XTAUWIY(nxxx), stat=istat )
1983 check_alloc_status( istat )
1985 ALLOCATE (
wadats(imod)%XTAUWIX(1), stat=istat )
1986 check_alloc_status( istat )
1987 ALLOCATE (
wadats(imod)%XTAUWIY(1) )
1988 check_alloc_status( istat )
1991 IF ( outflags( 5, 6) )
THEN
1992 ALLOCATE (
wadats(imod)%XTAUWNX(nxxx), stat=istat )
1993 check_alloc_status( istat )
1994 ALLOCATE (
wadats(imod)%XTAUWNY(nxxx), stat=istat )
1995 check_alloc_status( istat )
1997 ALLOCATE (
wadats(imod)%XTAUWNX(1), stat=istat )
1998 check_alloc_status( istat )
1999 ALLOCATE (
wadats(imod)%XTAUWNY(1), stat=istat )
2000 check_alloc_status( istat )
2003 IF ( outflags( 5, 7) .OR. outflags( 5, 8) .OR. &
2004 outflags( 5, 9) .OR. outflags( 5,10))
THEN
2005 ALLOCATE (
wadats(imod)%XWHITECAP(nxxx,4), stat=istat )
2006 check_alloc_status( istat )
2008 ALLOCATE (
wadats(imod)%XWHITECAP(1,4), stat=istat )
2009 check_alloc_status( istat )
2012 IF ( outflags( 5, 11) )
THEN
2013 ALLOCATE (
wadats(imod)%XTWS(nxxx), stat=istat )
2014 check_alloc_status( istat )
2016 ALLOCATE (
wadats(imod)%XTWS(1), stat=istat )
2017 check_alloc_status( istat )
2020 wadats(imod)%XCHARN = undef
2021 wadats(imod)%XTWS = undef
2022 wadats(imod)%XCGE = undef
2023 wadats(imod)%XPHIAW = undef
2024 wadats(imod)%XTAUWIX = undef
2025 wadats(imod)%XTAUWIY = undef
2026 wadats(imod)%XTAUWNX = undef
2027 wadats(imod)%XTAUWNY = undef
2028 wadats(imod)%XWHITECAP = undef
2030 IF ( outflags( 6, 1) )
THEN
2031 ALLOCATE (
wadats(imod)%XSXX(nxxx), stat=istat )
2032 check_alloc_status( istat )
2033 ALLOCATE (
wadats(imod)%XSYY(nxxx), stat=istat )
2034 check_alloc_status( istat )
2035 ALLOCATE (
wadats(imod)%XSXY(nxxx), stat=istat )
2036 check_alloc_status( istat )
2038 ALLOCATE (
wadats(imod)%XSXX(1), stat=istat )
2039 check_alloc_status( istat )
2040 ALLOCATE (
wadats(imod)%XSYY(1), stat=istat )
2041 check_alloc_status( istat )
2042 ALLOCATE (
wadats(imod)%XSXY(1), stat=istat )
2043 check_alloc_status( istat )
2046 IF ( outflags( 6, 2) )
THEN
2047 ALLOCATE (
wadats(imod)%XTAUOX(nxxx), stat=istat )
2048 check_alloc_status( istat )
2049 ALLOCATE (
wadats(imod)%XTAUOY(nxxx), stat=istat )
2050 check_alloc_status( istat )
2052 ALLOCATE (
wadats(imod)%XTAUOX(1), stat=istat )
2053 check_alloc_status( istat )
2054 ALLOCATE (
wadats(imod)%XTAUOY(1), stat=istat )
2055 check_alloc_status( istat )
2058 IF ( outflags( 6, 3) )
THEN
2059 ALLOCATE (
wadats(imod)%XBHD(nxxx), stat=istat )
2060 check_alloc_status( istat )
2062 ALLOCATE (
wadats(imod)%XBHD(1), stat=istat )
2063 check_alloc_status( istat )
2066 IF ( outflags( 6, 4) )
THEN
2067 ALLOCATE (
wadats(imod)%XPHIOC(nxxx), stat=istat )
2068 check_alloc_status( istat )
2070 ALLOCATE (
wadats(imod)%XPHIOC(1), stat=istat )
2071 check_alloc_status( istat )
2074 IF ( outflags( 6, 5) )
THEN
2075 ALLOCATE (
wadats(imod)%XTUSX(nxxx), stat=istat )
2076 check_alloc_status( istat )
2077 ALLOCATE (
wadats(imod)%XTUSY(nxxx), stat=istat )
2078 check_alloc_status( istat )
2080 ALLOCATE (
wadats(imod)%XTUSX(1), stat=istat )
2081 check_alloc_status( istat )
2082 ALLOCATE (
wadats(imod)%XTUSY(1), stat=istat )
2083 check_alloc_status( istat )
2086 IF ( outflags( 6, 6) )
THEN
2087 ALLOCATE (
wadats(imod)%XUSSX(nxxx), stat=istat )
2088 check_alloc_status( istat )
2089 ALLOCATE (
wadats(imod)%XUSSY(nxxx), stat=istat )
2090 check_alloc_status( istat )
2092 ALLOCATE (
wadats(imod)%XUSSX(1), stat=istat )
2093 check_alloc_status( istat )
2094 ALLOCATE (
wadats(imod)%XUSSY(1), stat=istat )
2095 check_alloc_status( istat )
2098 IF ( outflags( 6, 7) )
THEN
2099 ALLOCATE (
wadats(imod)%XPRMS(nxxx), stat=istat )
2100 check_alloc_status( istat )
2101 ALLOCATE (
wadats(imod)%XTPMS(nxxx), stat=istat )
2102 check_alloc_status( istat )
2104 ALLOCATE (
wadats(imod)%XPRMS(1), stat=istat )
2105 check_alloc_status( istat )
2106 ALLOCATE (
wadats(imod)%XTPMS(1), stat=istat )
2107 check_alloc_status( istat )
2110 IF ( outflags( 6, 8) )
THEN
2111 ALLOCATE (
wadats(imod)%XUS3D(nxxx,2*
nk), stat=istat )
2112 check_alloc_status( istat )
2114 ALLOCATE (
wadats(imod)%XUS3D(1,1), stat=istat )
2115 check_alloc_status( istat )
2118 IF ( outflags( 6, 9) )
THEN
2120 check_alloc_status( istat )
2122 ALLOCATE (
wadats(imod)%XP2SMS(1,1), stat=istat )
2123 check_alloc_status( istat )
2126 IF ( outflags( 6,10) )
THEN
2127 ALLOCATE (
wadats(imod)%XTAUICE(nxxx,2), stat=istat )
2128 check_alloc_status( istat )
2130 ALLOCATE (
wadats(imod)%XTAUICE(1,2), stat=istat )
2131 check_alloc_status( istat )
2134 IF ( outflags( 6,11) )
THEN
2135 ALLOCATE (
wadats(imod)%XPHICE(nxxx), stat=istat )
2136 check_alloc_status( istat )
2138 ALLOCATE (
wadats(imod)%XPHICE(1), stat=istat )
2139 check_alloc_status( istat )
2142 IF ( outflags( 6, 12) )
THEN
2143 ALLOCATE (
wadats(imod)%XUSSP(nxxx,2*
nk), stat=istat )
2144 check_alloc_status( istat )
2146 ALLOCATE (
wadats(imod)%XUSSP(1,1), stat=istat )
2147 check_alloc_status( istat )
2150 IF ( outflags( 6, 13) )
THEN
2151 ALLOCATE (
wadats(imod)%XTAUOCX(nxxx), stat=istat )
2152 check_alloc_status( istat )
2153 ALLOCATE (
wadats(imod)%XTAUOCY(nxxx), stat=istat )
2154 check_alloc_status( istat )
2156 ALLOCATE (
wadats(imod)%XTAUOCX(1), stat=istat )
2157 check_alloc_status( istat )
2158 ALLOCATE (
wadats(imod)%XTAUOCY(1), stat=istat )
2159 check_alloc_status( istat )
2162 wadats(imod)%XSXX = undef
2163 wadats(imod)%XSYY = undef
2164 wadats(imod)%XSXY = undef
2165 wadats(imod)%XTAUOX = undef
2166 wadats(imod)%XTAUOY = undef
2167 wadats(imod)%XBHD = undef
2168 wadats(imod)%XPHIOC = undef
2169 wadats(imod)%XTUSX = undef
2170 wadats(imod)%XTUSY = undef
2171 wadats(imod)%XUSSX = undef
2172 wadats(imod)%XUSSY = undef
2173 wadats(imod)%XPRMS = undef
2174 wadats(imod)%XTPMS = undef
2175 wadats(imod)%XUS3D = undef
2176 wadats(imod)%XP2SMS = undef
2177 wadats(imod)%XPHICE = undef
2178 wadats(imod)%XTAUICE = undef
2179 wadats(imod)%XUSSP = undef
2180 wadats(imod)%XTAUOCX = undef
2181 wadats(imod)%XTAUOCY = undef
2183 IF ( outflags( 7, 1) )
THEN
2184 ALLOCATE (
wadats(imod)%XABA(nxxx), stat=istat )
2185 check_alloc_status( istat )
2186 ALLOCATE (
wadats(imod)%XABD(nxxx), stat=istat )
2187 check_alloc_status( istat )
2189 ALLOCATE (
wadats(imod)%XABA(1), stat=istat )
2190 check_alloc_status( istat )
2191 ALLOCATE (
wadats(imod)%XABD(1), stat=istat )
2192 check_alloc_status( istat )
2195 IF ( outflags( 7, 2) )
THEN
2196 ALLOCATE (
wadats(imod)%XUBA(nxxx), stat=istat )
2197 check_alloc_status( istat )
2198 ALLOCATE (
wadats(imod)%XUBD(nxxx), stat=istat )
2199 check_alloc_status( istat )
2201 ALLOCATE (
wadats(imod)%XUBA(1), stat=istat )
2202 check_alloc_status( istat )
2203 ALLOCATE (
wadats(imod)%XUBD(1), stat=istat )
2204 check_alloc_status( istat )
2207 IF ( outflags( 7, 3) )
THEN
2208 ALLOCATE (
wadats(imod)%XBEDFORMS(nxxx,3), stat=istat )
2209 check_alloc_status( istat )
2211 ALLOCATE (
wadats(imod)%XBEDFORMS(1,3), stat=istat )
2212 check_alloc_status( istat )
2215 IF ( outflags( 7, 4) )
THEN
2216 ALLOCATE (
wadats(imod)%XPHIBBL(nxxx), stat=istat )
2217 check_alloc_status( istat )
2219 ALLOCATE (
wadats(imod)%XPHIBBL(1), stat=istat )
2220 check_alloc_status( istat )
2223 IF ( outflags( 7, 5) )
THEN
2224 ALLOCATE (
wadats(imod)%XTAUBBL(nxxx,2), stat=istat )
2225 check_alloc_status( istat )
2227 ALLOCATE (
wadats(imod)%XTAUBBL(1,2), stat=istat )
2228 check_alloc_status( istat )
2231 wadats(imod)%XABA = undef
2232 wadats(imod)%XABD = undef
2233 wadats(imod)%XUBA = undef
2234 wadats(imod)%XUBD = undef
2235 wadats(imod)%XBEDFORMS = undef
2236 wadats(imod)%XPHIBBL = undef
2237 wadats(imod)%XTAUBBL = undef
2239 IF ( outflags( 8, 1) )
THEN
2240 ALLOCATE (
wadats(imod)%XMSSX(nxxx), stat=istat )
2241 check_alloc_status( istat )
2242 ALLOCATE (
wadats(imod)%XMSSY(nxxx), stat=istat )
2243 check_alloc_status( istat )
2245 ALLOCATE (
wadats(imod)%XMSSX(1), stat=istat )
2246 check_alloc_status( istat )
2247 ALLOCATE (
wadats(imod)%XMSSY(1), stat=istat )
2248 check_alloc_status( istat )
2251 IF ( outflags( 8, 2) )
THEN
2252 ALLOCATE (
wadats(imod)%XMSCX(nxxx), stat=istat )
2253 check_alloc_status( istat )
2254 ALLOCATE (
wadats(imod)%XMSCY(nxxx), stat=istat )
2255 check_alloc_status( istat )
2257 ALLOCATE (
wadats(imod)%XMSCX(1), stat=istat )
2258 check_alloc_status( istat )
2259 ALLOCATE (
wadats(imod)%XMSCY(1), stat=istat )
2260 check_alloc_status( istat )
2263 IF ( outflags( 8, 3) )
THEN
2264 ALLOCATE (
wadats(imod)%XMSSD(nxxx), stat=istat )
2265 check_alloc_status( istat )
2267 ALLOCATE (
wadats(imod)%XMSSD(1), stat=istat )
2268 check_alloc_status( istat )
2271 IF ( outflags( 8, 4) )
THEN
2272 ALLOCATE (
wadats(imod)%XMSCD(nxxx), stat=istat )
2273 check_alloc_status( istat )
2275 ALLOCATE (
wadats(imod)%XMSCD(1), stat=istat )
2276 check_alloc_status( istat )
2279 IF ( outflags( 8, 5) )
THEN
2280 ALLOCATE (
wadats(imod)%XQP(nxxx) )
2282 ALLOCATE (
wadats(imod)%XQP(1) )
2285 IF ( outflags( 8, 6) )
THEN
2286 ALLOCATE (
wadats(imod)%XQKK(nxxx) )
2288 ALLOCATE (
wadats(imod)%XQKK(1) )
2291 IF ( outflags( 8, 7) )
THEN
2292 ALLOCATE (
wadats(imod)%XSKEW(nxxx) )
2294 ALLOCATE (
wadats(imod)%XSKEW(1) )
2297 IF ( outflags( 8, 8) )
THEN
2298 ALLOCATE (
wadats(imod)%XEMBIA1(nxxx) )
2300 ALLOCATE (
wadats(imod)%XEMBIA1(1) )
2303 IF ( outflags( 8, 9) )
THEN
2304 ALLOCATE (
wadats(imod)%XEMBIA2(nxxx) )
2306 ALLOCATE (
wadats(imod)%XEMBIA2(1) )
2309 wadats(imod)%XMSSX = undef
2310 wadats(imod)%XMSSY = undef
2311 wadats(imod)%XMSSD = undef
2312 wadats(imod)%XMSCX = undef
2313 wadats(imod)%XMSCY = undef
2314 wadats(imod)%XMSCD = undef
2315 wadats(imod)%XQP(1) = undef
2316 wadats(imod)%XQKK = undef
2317 wadats(imod)%XSKEW = undef
2318 wadats(imod)%XEMBIA1 = undef
2319 wadats(imod)%XEMBIA2 = undef
2321 IF ( outflags( 9, 1) )
THEN
2322 ALLOCATE (
wadats(imod)%XDTDYN(nxxx), stat=istat )
2323 check_alloc_status( istat )
2325 ALLOCATE (
wadats(imod)%XDTDYN(1), stat=istat )
2326 check_alloc_status( istat )
2329 IF ( outflags( 9, 2) )
THEN
2330 ALLOCATE (
wadats(imod)%XFCUT(nxxx), stat=istat )
2331 check_alloc_status( istat )
2333 ALLOCATE (
wadats(imod)%XFCUT(1), stat=istat )
2334 check_alloc_status( istat )
2337 IF ( outflags( 9, 3) )
THEN
2338 ALLOCATE (
wadats(imod)%XCFLXYMAX(nxxx), stat=istat )
2339 check_alloc_status( istat )
2341 ALLOCATE (
wadats(imod)%XCFLXYMAX(1), stat=istat )
2342 check_alloc_status( istat )
2345 IF ( outflags( 9, 4) )
THEN
2346 ALLOCATE (
wadats(imod)%XCFLTHMAX(nxxx), stat=istat )
2347 check_alloc_status( istat )
2349 ALLOCATE (
wadats(imod)%XCFLTHMAX(1), stat=istat )
2350 check_alloc_status( istat )
2353 IF ( outflags( 9, 5) )
THEN
2354 ALLOCATE (
wadats(imod)%XCFLKMAX(nxxx), stat=istat )
2355 check_alloc_status( istat )
2357 ALLOCATE (
wadats(imod)%XCFLKMAX(1), stat=istat )
2358 check_alloc_status( istat )
2361 wadats(imod)%XDTDYN = undef
2362 wadats(imod)%XFCUT = undef
2363 wadats(imod)%XCFLXYMAX = undef
2364 wadats(imod)%XCFLTHMAX = undef
2365 wadats(imod)%XCFLKMAX = undef
2368 IF ( outflags(10, i) )
THEN
2369 ALLOCATE (
wadats(imod)%XUSERO(nxxx,i), stat=istat )
2370 check_alloc_status( istat )
2372 ALLOCATE (
wadats(imod)%XUSERO(1,i), stat=istat )
2373 check_alloc_status( istat )
2377 wadats(imod)%XUSERO = undef
2379 wadats(imod)%AINIT2 = .true.
2389 IF ( jgrid .NE. imod )
CALL w3setg ( jgrid, ndse, ndst )
2391 call print_memcheck(memunit,
'memcheck_____:'//
' W3XDMA')
2397 1001
FORMAT (/
' *** ERROR W3XDMA : GRIDS NOT INITIALIZED *** '/ &
2398 ' RUN W3NMOD FIRST '/)
2399 1002
FORMAT (/
' *** ERROR W3XDMA : ILLEGAL MODEL NUMBER *** '/ &
2402 1003
FORMAT (/
' *** ERROR W3XDMA : ARRAY(S) ALREADY ALLOCATED *** ')
2405 9000
FORMAT (
' TEST W3XDMA : MODEL ',i4)
2406 9001
FORMAT (
' TEST W3XDMA : ARRAYS ALLOCATED')
2407 9002
FORMAT (
' TEST W3XDMA : POINTERS RESET')
2408 9003
FORMAT (
' TEST W3XDMA : DIMENSIONS STORED')
2430 SUBROUTINE w3dmnl ( IMOD, NDSE, NDST, NSP, NSPX )
2507 INTEGER,
INTENT(IN) :: IMOD, NDSE, NDST, NSP, NSPX
2513 INTEGER,
SAVE :: IENT = 0
2514 CALL strace (ient,
'W3DMNL')
2520 IF (
ngrids .EQ. -1 )
THEN
2525 IF ( imod.LT.1 .OR. imod.GT.
nadata )
THEN
2526 WRITE (ndse,1002) imod,
nadata
2531 IF (
wadats(imod)%NLINIT )
THEN
2538 WRITE (ndst,9000) imod
2545 ALLOCATE (
wadats(imod)%IP11(nspx), &
2546 wadats(imod)%IP12(nspx), &
2547 wadats(imod)%IP13(nspx), &
2548 wadats(imod)%IP14(nspx), &
2549 wadats(imod)%IM11(nspx), &
2550 wadats(imod)%IM12(nspx), &
2551 wadats(imod)%IM13(nspx), &
2552 wadats(imod)%IM14(nspx), &
2553 wadats(imod)%IP21(nspx), &
2554 wadats(imod)%IP22(nspx), &
2555 wadats(imod)%IP23(nspx), &
2556 wadats(imod)%IP24(nspx), &
2557 wadats(imod)%IM21(nspx), &
2558 wadats(imod)%IM22(nspx), &
2559 wadats(imod)%IM23(nspx), &
2560 wadats(imod)%IM24(nspx), &
2561 wadats(imod)%IC11(nsp) , &
2562 wadats(imod)%IC12(nsp) , &
2563 wadats(imod)%IC21(nsp) , &
2564 wadats(imod)%IC22(nsp) , &
2565 wadats(imod)%IC31(nsp) , &
2566 wadats(imod)%IC32(nsp) , &
2567 wadats(imod)%IC41(nsp) , &
2568 wadats(imod)%IC42(nsp) , &
2569 wadats(imod)%IC51(nsp) , &
2570 wadats(imod)%IC52(nsp) , &
2571 wadats(imod)%IC61(nsp) , &
2572 wadats(imod)%IC62(nsp) , &
2573 wadats(imod)%IC71(nsp) , &
2574 wadats(imod)%IC72(nsp) , &
2575 wadats(imod)%IC81(nsp) , &
2576 wadats(imod)%IC82(nsp) , &
2577 wadats(imod)%AF11(nspx), &
2579 check_alloc_status( istat )
2580 wadats(imod)%NLINIT = .true.
2590 CALL w3seta ( imod, ndse, ndst )
2611 1001
FORMAT (/
' *** ERROR W3DMNL : GRIDS NOT INITIALIZED *** '/ &
2612 ' RUN W3NMOD FIRST '/)
2613 1002
FORMAT (/
' *** ERROR W3DMNL : ILLEGAL MODEL NUMBER *** '/ &
2617 1003
FORMAT (/
' *** ERROR W3DMNL : ARRAY(S) ALREADY ALLOCATED *** ')
2621 9000
FORMAT (
' TEST W3DMNL : MODEL ',i4)
2622 9001
FORMAT (
' TEST W3DMNL : ARRAYS ALLOCATED')
2623 9002
FORMAT (
' TEST W3DMNL : POINTERS RESET')
2624 9003
FORMAT (
' TEST W3DMNL : DIMENSIONS STORED')
2644 SUBROUTINE w3seta ( IMOD, NDSE, NDST )
2722 INTEGER,
INTENT(IN) :: IMOD, NDSE, NDST
2728 INTEGER,
SAVE :: IENT = 0
2729 CALL strace (ient,
'W3SETA')
2735 IF (
nadata .EQ. -1 )
THEN
2740 IF ( imod.LT.1 .OR. imod.GT.
nadata )
THEN
2741 WRITE (ndse,1002) imod,
nadata
2746 WRITE (ndst,9000) imod
2979 IF (
inputs(imod)%INFLAGS1(2) )
THEN
2986 IF (
inputs(imod)%INFLAGS1(3) )
THEN
2995 IF (
inputs(imod)%INFLAGS1(5) )
THEN
3002 IF (
inputs(imod)%INFLAGS1(6) )
THEN
3081 IF (
nrqsg1 .NE. 0 )
THEN
3093 1001
FORMAT (/
' *** ERROR W3SETA : GRIDS NOT INITIALIZED *** '/ &
3094 ' RUN W3NMOD FIRST '/)
3095 1002
FORMAT (/
' *** ERROR W3SETA : ILLEGAL MODEL NUMBER *** '/ &
3100 9000
FORMAT (
' TEST W3SETA : MODEL ',i4,
' SELECTED')
3117 SUBROUTINE w3xeta ( IMOD, NDSE, NDST )
3150 INTEGER,
INTENT(IN) :: IMOD, NDSE, NDST
3156 INTEGER,
SAVE :: IENT = 0
3157 CALL strace (ient,
'W3XETA')
3163 IF (
nadata .EQ. -1 )
THEN
3168 IF ( imod.LT.1 .OR. imod.GT.
nadata )
THEN
3169 WRITE (ndse,1002) imod,
nadata
3174 WRITE (ndst,9000) imod
3294 1001
FORMAT (/
' *** ERROR W3XETA : GRIDS NOT INITIALIZED *** '/ &
3295 ' RUN W3NMOD FIRST '/)
3296 1002
FORMAT (/
' *** ERROR W3XETA : ILLEGAL MODEL NUMBER *** '/ &
3301 9000
FORMAT (
' TEST W3XETA : MODEL ',i4,
' SELECTED')