WAVEWATCH III  beta 0.0.1
w3arrymd.F90 File Reference

Go to the source code of this file.

Modules

module  w3arrymd
 

Functions/Subroutines

subroutine w3arrymd::ina2r (ARRAY, MX, MY, LX, HX, LY, HY, NDS, NDST, NDSE, IDFM, RFORM, IDLA, VSC, VOF)
 
subroutine w3arrymd::ina2i (ARRAY, MX, MY, LX, HX, LY, HY, NDS, NDST, NDSE, IDFM, RFORM, IDLA, VSC, VOF)
 
subroutine w3arrymd::outa2r (ARRAY, MX, MY, LX, HX, LY, HY, NDS, NDST, NDSE, IDFM, RFORM, IDLA, VSC, VOF)
 
subroutine w3arrymd::outa2i (ARRAY, MX, MY, LX, HX, LY, HY, NDS, NDST, NDSE, IDFM, RFORM, IDLA, VSC, VOF)
 
subroutine w3arrymd::outrea (NDS, ARRAY, DIM, ANAME)
 
subroutine w3arrymd::outint (NDS, IARRAY, DIM, ANAME)
 
subroutine w3arrymd::outmat (NDS, A, MX, NX, NY, MNAME)
 
subroutine w3arrymd::prtblk (NDS, NX, NY, MX, F, MAP, MAP0, FSC, IX1, IX2, IX3, IY1, IY2, IY3, PRVAR, PRUNIT)
 
subroutine w3arrymd::prt1ds (NDS, NFR, E, FR, UFR, NLINES, FTOPI, PRVAR, PRUNIT, PNTNME)
 
subroutine w3arrymd::prt1dm (NDS, NFR, NE, E, FR, UFR, NLINES, FTOPI, PRVAR, PRUNIT, PNTNME)
 
subroutine w3arrymd::prt2ds (NDS, NFR0, NFR, NTH, E, FR, UFR, FACSP, FSC, RRCUT, PRVAR, PRUNIT, PNTNME)
 
subroutine angstr (IANG, SANG, ILEN, INUM)
 

Function/Subroutine Documentation

◆ angstr()

subroutine prt2ds::angstr ( integer, intent(in)  IANG,
character, dimension(*), intent(out)  SANG,
integer, intent(in)  ILEN,
integer, intent(in)  INUM 
)

Definition at line 2290 of file w3arrymd.F90.

2290  !/
2291  !/ +-----------------------------------+
2292  !/ | WAVEWATCH III NOAA/NCEP |
2293  !/ | H. L. Tolman |
2294  !/ | FORTRAN 90 |
2295  !/ | Last update : 29-Nov-1999 |
2296  !/ +-----------------------------------+
2297  !/
2298  !/ 10-Mar-1992 : Final FORTRAN 77 ( version 1.18 )
2299  !/ 29-Nov-1999 : Upgrade to FORTRAN 90 ( version 2.00 )
2300  !
2301  ! INPUT : IANG --> INTEGER ANGLE (DEGREES)
2302  ! ILEN --> STRING LENGTH
2303  ! INUM --> <1 : ONLY FOUR MAIN DIRECTIONS
2304  ! 1 : N,E,S,W AND NUMERICAL OUTPUT
2305  ! 2 : EIGHT MAIN DIRECTIONS
2306  ! >2 : EIGHT DIRECTIONS + NUMERICAL OUTPUT
2307  ! OUTPUT : SANG --> STRING
2308  !
2309  !/ ------------------------------------------------------------------- /
2310  !/
2311 #ifdef W3_S
2312  USE w3servmd, ONLY: strace
2313 #endif
2314  !
2315  IMPLICIT NONE
2316  !/
2317  !/ ------------------------------------------------------------------- /
2318  !/ Parameter list
2319  !/
2320  INTEGER, INTENT(IN) :: IANG, ILEN, INUM
2321  CHARACTER, INTENT(OUT) :: SANG*(*)
2322  !/
2323  !/ ------------------------------------------------------------------- /
2324  !/ Local parameters
2325  !/
2326  INTEGER :: I, J
2327  CHARACTER :: SAUX*4
2328  !/
2329  !/ ------------------------------------------------------------------- /
2330  !/
2331  ! numerical :
2332  !
2333  IF (inum.EQ.1 .OR. inum.GE.3) THEN
2334  WRITE (saux, fmt='(I4)') iang
2335  ELSE
2336  saux = ' '
2337  END IF
2338  !
2339  ! string :
2340  !
2341  IF (iang.EQ.0) THEN
2342  saux = ' N'
2343  ELSE IF (iang.EQ.90) THEN
2344  saux = ' E'
2345  ELSE IF (iang.EQ.180) THEN
2346  saux = ' S'
2347  ELSE IF (iang.EQ.270) THEN
2348  saux = ' W'
2349  ELSE IF (inum.GE.2) THEN
2350  IF (iang.EQ.45) THEN
2351  saux = ' NE'
2352  ELSE IF (iang.EQ.135) THEN
2353  saux = ' SE'
2354  ELSE IF (iang.EQ.225) THEN
2355  saux = ' SW'
2356  ELSE IF (iang.EQ.315) THEN
2357  saux = ' NW'
2358  END IF
2359  END IF
2360  !
2361  ! Auxilary string to output :
2362  !
2363  DO i=1, ilen-4
2364  sang = ' '
2365  END DO
2366  j = 0
2367  DO i=ilen-3, ilen
2368  j = j + 1
2369  sang(i:i) = saux(j:j)
2370  END DO
2371  RETURN
2372  !/
2373  !/ End of ANGSTR ----------------------------------------------------- /
2374  !/

References w3servmd::strace().

Referenced by w3arrymd::prt2ds().

w3servmd
Definition: w3servmd.F90:3
w3servmd::strace
subroutine strace(IENT, SNAME)
Definition: w3servmd.F90:148