WAVEWATCH III  beta 0.0.1
w3gdatmd Module Reference

Data Types

type  fldp
 
type  grid
 
type  mpar
 
type  npar
 
type  prop
 
type  sbsp
 
type  sbtp
 
type  schm
 
type  sdbp
 
type  sflp
 
type  sgrd
 
type  sicp
 
type  slnp
 
type  snlp
 
type  srcp
 
type  strp
 
type  uostp
 

Functions/Subroutines

subroutine w3nmod (NUMBER, NDSE, NDST, NAUX)
 
subroutine w3dimx (IMOD, MX, MY, MSEA, NDSE, NDST ifdef W3_SMC
 
subroutine w3dims (IMOD, MK, MTH, NDSE, NDST)
 
subroutine w3setg (IMOD, NDSE, NDST)
 
subroutine w3gntx (IMOD, NDSE, NDST)
 
subroutine w3dimug (IMOD, MTRI, MX, COUNTOTA, NNZ, NDSE, NDST)
 
subroutine w3setref
 

Variables

integer ngrids = -1
 
integer igrid = -1
 
integer isgrd = -1
 
integer ipars = -1
 
integer nauxgr
 
integer, parameter nic4 =16
 
integer, parameter nic42 =5
 
integer, parameter rlgtype = 1
 
integer, parameter clgtype = 2
 
integer, parameter ungtype = 3
 
integer, parameter smctype = 4
 
integer, parameter iclose_none = ICLO_NONE
 
integer, parameter iclose_smpl = ICLO_SMPL
 
integer, parameter iclose_trpl = ICLO_TRPL
 
integer, parameter nkhs =2000
 
integer, parameter nkd =1300
 
integer, parameter ndtab =2000
 
type(grid), dimension(:), allocatable, target grids
 
type(sgrd), dimension(:), allocatable, target sgrds
 
type(mpar), dimension(:), allocatable, target mpars
 
integer, pointer gtype
 
integer, pointer rstype
 
integer, pointer iclose
 
integer, pointer nx
 
integer, pointer ny
 
integer, pointer nsea
 
integer, pointer nseal
 
integer, pointer trflag
 
integer, dimension(:,:), pointer e3df
 
integer, dimension(:), pointer p2msf
 
integer, dimension(:), pointer us3df
 
integer, dimension(:), pointer usspf
 
real, dimension(:), pointer ussp_wn
 
real, dimension(:,:), pointer reflc
 
integer, dimension(:,:), pointer refld
 
integer, pointer nbedge
 
integer, dimension(:,:), pointer edges
 
integer, dimension(:,:), pointer neigh
 
integer, pointer ntri
 
integer, pointer countri
 
integer, pointer countot
 
integer, pointer nnz
 
integer optioncall = 3
 
integer, dimension(:,:), pointer trigp
 
integer, pointer nbnd_map
 
integer, dimension(:), pointer index_map
 
integer, dimension(:), pointer mapsta_loc
 
integer *1, dimension(:,:), pointer iobpd_loc
 
integer *2, dimension(:), pointer iobp_loc
 
integer *1, dimension(:), pointer iobdp_loc
 
integer *1, dimension(:), pointer iobpa_loc
 
real(8), dimension(:,:), pointer ien
 
real(8), dimension(:,:), pointer len
 
real(8), dimension(:), pointer si
 
real, dimension(:,:), pointer angle
 
real, dimension(:,:), pointer angle0
 
integer, dimension(:), pointer ccon
 
integer, dimension(:), pointer countcon
 
integer, dimension(:), pointer ie_cell
 
integer, dimension(:), pointer pos_cell
 
integer, dimension(:), pointer iaa
 
integer, dimension(:), pointer jaa
 
integer, dimension(:,:), pointer posi
 
integer, dimension(:), pointer i_diag
 
integer, dimension(:,:,:), pointer ja_ie
 
integer, dimension(:), pointer index_cell
 
integer *2, dimension(:), pointer iobp
 
integer *1, dimension(:,:), pointer iobpd
 
integer *1, dimension(:), pointer iobdp
 
integer *1, dimension(:), pointer iobpa
 
real(8), dimension(:), pointer tria
 
real, dimension(:,:), pointer crossdiff
 
real, pointer maxx
 
real, pointer maxy
 
real, pointer dxymax
 
logical, pointer guginit
 
real, pointer ffacberg
 
logical, dimension(:), pointer rref
 
real, dimension(:), pointer refpars
 
real, dimension(:), pointer igpars
 
real, dimension(:), pointer ic2pars
 
real, dimension(:), pointer ic3pars
 
integer, dimension(:), pointer ic4pars
 
real, dimension(:), pointer ic4_ki
 
real, dimension(:), pointer ic4_fc
 
real, dimension(:), pointer ic4_cn
 
real, pointer ic4_fmin
 
real, pointer ic4_kibk
 
real, dimension(:), pointer ic5pars
 
real, dimension(:), pointer is2pars
 
integer, dimension(:,:), pointer mapsta
 
integer, dimension(:,:), pointer mapst2
 
integer, dimension(:,:), pointer mapfs
 
integer, dimension(:,:), pointer mapsf
 
integer, pointer ncel
 
integer, pointer nufc
 
integer, pointer nvfc
 
integer, pointer nrlv
 
integer, pointer mrfct
 
integer, pointer nglo
 
integer, pointer narc
 
integer, pointer nbgl
 
integer, pointer nbac
 
integer, pointer nbsmc
 
integer, dimension(:), pointer nlvcel
 
integer, dimension(:), pointer nlvufc
 
integer, dimension(:), pointer nlvvfc
 
integer, dimension(:,:), pointer ijkcel
 
integer, dimension(:,:), pointer ijkufc
 
integer, dimension(:,:), pointer ijkvfc
 
integer, dimension(:), pointer ismcbp
 
integer, dimension(:), pointer iclbac
 
integer, dimension(:), pointer ijkcel3
 
integer, dimension(:), pointer ijkcel4
 
integer, dimension(:), pointer ijkvfc5
 
integer, dimension(:), pointer ijkvfc6
 
integer, dimension(:), pointer ijkufc5
 
integer, dimension(:), pointer ijkufc6
 
integer, pointer nitersec1
 
real, pointer sx
 
real, pointer sy
 
real, pointer x0
 
real, pointer y0
 
real, pointer dtcfl
 
real, pointer dtcfli
 
real, pointer dtmax
 
real, pointer dtmin
 
real, pointer dmin
 
real, pointer ctmax
 
real, pointer fice0
 
real, pointer ficen
 
real, pointer ficel
 
real, pointer pfmove
 
real, pointer stexu
 
real, pointer steyu
 
real, pointer stedu
 
real, pointer iicehmin
 
real, pointer iicehinit
 
real, dimension(:), pointer icescales
 
real, pointer iicehfac
 
real, pointer iicehdisp
 
real, pointer iiceddisp
 
real, pointer iicefdisp
 
real, pointer btbeta
 
real, pointer aaircmin
 
real, pointer aairgb
 
real(8), pointer gridshift
 
real, pointer polat
 
real, pointer polon
 
real, dimension(:), pointer angld
 
logical, pointer flagunr
 
real, dimension(:), pointer zb
 
real, dimension(:), pointer clats
 
real, dimension(:), pointer clatis
 
real, dimension(:), pointer cthg0s
 
real, dimension(:,:), pointer trnx
 
real, dimension(:,:), pointer trny
 
real, dimension(:), pointer ctrnx
 
real, dimension(:), pointer ctrny
 
real, dimension(:), pointer clatf
 
real, dimension(:,:), pointer spcbac
 
real, dimension(:), pointer angarc
 
double precision, dimension(:,:), pointer xgrd
 
double precision, dimension(:,:), pointer ygrd
 
real, dimension(:,:), pointer dxdp
 
real, dimension(:,:), pointer dxdq
 
real, dimension(:,:), pointer dydp
 
real, dimension(:,:), pointer dydq
 
real, dimension(:,:), pointer dpdx
 
real, dimension(:,:), pointer dpdy
 
real, dimension(:,:), pointer dqdx
 
real, dimension(:,:), pointer dqdy
 
real, dimension(:,:), pointer gsqrt
 
real, dimension(:,:), pointer hpfac
 
real, dimension(:,:), pointer hqfac
 
real, dimension(:), pointer sed_d50
 
real, dimension(:), pointer sed_psic
 
logical, pointer ginit
 
logical, pointer fldry
 
logical, pointer flcx
 
logical, pointer flcy
 
logical, pointer flcth
 
logical, pointer flck
 
logical, pointer flsou
 
logical, pointer iicedisp
 
logical, pointer iicesmooth
 
logical, pointer flagll
 
logical, pointer cmprtrck
 
logical, dimension(:), pointer flagst
 
character(len=30), pointer gname
 
character(len=13), pointer filext
 
type(t_gsu), pointer gsu
 
integer, pointer nk
 
integer, pointer nk2
 
integer, pointer nth
 
integer, pointer nspec
 
integer, dimension(:), pointer mapwn
 
integer, dimension(:), pointer mapth
 
real, pointer dth
 
real, pointer xfr
 
real, pointer fr1
 
real, pointer fte
 
real, pointer ftf
 
real, pointer ftwn
 
real, pointer fttr
 
real, pointer ftwl
 
real, pointer facti1
 
real, pointer facti2
 
real, pointer fachfa
 
real, pointer fachfe
 
real, dimension(:), pointer th
 
real, dimension(:), pointer esin
 
real, dimension(:), pointer ecos
 
real, dimension(:), pointer es2
 
real, dimension(:), pointer esc
 
real, dimension(:), pointer ec2
 
real, dimension(:), pointer sig
 
real, dimension(:), pointer sig2
 
real, dimension(:), pointer dsip
 
real, dimension(:), pointer dsii
 
real, dimension(:), pointer dden
 
real, dimension(:), pointer dden2
 
logical, pointer sinit
 
logical, pointer pinit
 
real, pointer facp
 
real, pointer xrel
 
real, pointer xflt
 
real, pointer fxfm
 
real, pointer fxpm
 
real, pointer xft
 
real, pointer xfc
 
real, pointer facsd
 
real, pointer fhmax
 
real, pointer rwindc
 
real, dimension(:), pointer wwcor
 
real, pointer dtme
 
real, pointer clatmn
 
real, pointer wdcg
 
real, pointer wdth
 
real, pointer dtms
 
real, pointer refran
 
logical, pointer funo3
 
logical, pointer fverg
 
logical, pointer fswnd
 
logical, pointer arctc
 
integer, pointer tail_id
 
real, pointer tail_lev
 
real, pointer tail_tran1
 
real, pointer tail_tran2
 
integer, pointer nittin
 
real, pointer cinxsi
 
integer, pointer cap_id
 
real, pointer cd_max
 
real, pointer flx4a0
 
real, pointer slnc1
 
real, pointer fspm
 
real, pointer fshf
 
real, pointer sinc1
 
real, pointer sdsc1
 
real, pointer zwind
 
real, pointer fswell
 
real, pointer shstab
 
real, pointer ofstab
 
real, pointer ccng
 
real, pointer ccps
 
real, pointer ffng
 
real, pointer ffps
 
real, pointer cdsa0
 
real, pointer cdsa1
 
real, pointer cdsa2
 
real, pointer sdsaln
 
real, pointer cdsb0
 
real, pointer cdsb1
 
real, pointer cdsb2
 
real, pointer cdsb3
 
real, pointer fpimin
 
real, pointer xfh
 
real, pointer xf1
 
real, pointer xf2
 
real, pointer zzwnd
 
real, pointer aalpha
 
real, pointer bbeta
 
real, pointer zz0max
 
real, pointer zz0rat
 
real, pointer zzalp
 
real, pointer ffxfm
 
real, pointer ffxpm
 
real, pointer ssinthp
 
real, pointer ttauwshelter
 
real, dimension(:), pointer sswellf
 
real, pointer ssdsc1
 
real, pointer ssdsc2
 
real, pointer ssdsc3
 
real, pointer ssdsbr
 
real, pointer ssdsp
 
real, pointer wwnmeanp
 
real, pointer sstxftf
 
real, pointer sstxftwn
 
real, pointer ssdsc4
 
real, pointer ssdsc5
 
real, pointer ssdsc6
 
real, pointer ssdsbt
 
real, pointer ddelta1
 
real, pointer ddelta2
 
real, pointer ssdscos
 
real, pointer ssdsdth
 
real, dimension(:), pointer ssdsbm
 
integer, pointer sswellfpar
 
integer, pointer ssdsiso
 
integer, pointer ssdsbrfdf
 
integer, dimension(:,:), pointer iktab
 
integer, dimension(:,:), pointer satindices
 
integer, pointer ssdsdik
 
real, dimension(:,:), pointer dcki
 
real, dimension(:,:), pointer satweights
 
real, dimension(:,:), pointer cumulw
 
real, dimension(:,:), pointer qbi
 
real, pointer ffxfa
 
real, pointer ssdsbrf1
 
real, pointer ssdsbrf2
 
real, pointer ssdsbint
 
real, pointer ssdsbck
 
real, pointer ssdshck
 
real, pointer ssdsabk
 
real, pointer ssdspbk
 
real, pointer ssinbr
 
real, dimension(:), pointer sintailpar
 
real, dimension(:), pointer ssdsc
 
real, dimension(:), pointer capchnk
 
real, pointer sin6a0
 
real, pointer sds6a1
 
real, pointer sds6a2
 
real, pointer swl6b1
 
real, pointer sin6ws
 
real, pointer sin6fc
 
integer, pointer sds6p1
 
integer, pointer sds6p2
 
logical, pointer sds6et
 
logical, pointer swl6s6
 
logical, pointer swl6cstb1
 
real, pointer wwnmeanptail
 
real, pointer sstxftftail
 
integer, pointer iqtpe
 
integer, pointer gqnf1
 
integer, pointer gqnt1
 
integer, pointer gqnq_om2
 
real, pointer nltail
 
real, pointer gqthrsat
 
real, pointer gqthrcou
 
real, dimension(:), pointer gqamp
 
real, pointer snlc1
 
real, pointer lam
 
real, pointer kdcon
 
real, pointer kdmn
 
real, pointer snls1
 
real, pointer snls2
 
real, pointer snls3
 
integer, pointer ndpths
 
real, dimension(:), pointer dpthnl
 
integer, pointer nfrmin
 
integer, pointer nfrmax
 
integer, pointer nfrcut
 
integer, pointer nthmax
 
integer, pointer nthexp
 
integer, pointer nspmin
 
integer, pointer nspmax
 
integer, pointer nspmx2
 
integer, pointer nqa
 
integer, pointer snlnq
 
integer, dimension(:,:,:), pointer qst1
 
integer, dimension(:,:,:), pointer qst4
 
real, pointer snlmsc
 
real, pointer snlnsc
 
real, pointer snlsfd
 
real, pointer snlsfs
 
real, dimension(:), pointer frq
 
real, dimension(:), pointer xsi
 
real, dimension(:,:,:), pointer qst2
 
real, dimension(:,:,:), pointer qst3
 
real, dimension(:,:,:), pointer qst5
 
real, dimension(:,:,:), pointer qst6
 
real, dimension(:), pointer snll
 
real, dimension(:), pointer snlm
 
real, dimension(:), pointer snlt
 
real, dimension(:), pointer snlcd
 
real, dimension(:), pointer snlcs
 
integer, pointer itsa
 
integer, pointer ialt
 
real, pointer qr5dpt
 
real, pointer qr5oml
 
integer, pointer qi5dis
 
integer, pointer qi5kev
 
integer, pointer qi5ipl
 
integer, pointer qi5pmx
 
integer(kind=8), pointer qi5nnz
 
integer, pointer nthx
 
integer, pointer nfrx
 
integer, pointer nspl
 
integer, pointer nsph
 
real, pointer cnlsa
 
real, pointer cnlsc
 
real, pointer cnlsfm
 
real, pointer cnlsc1
 
real, pointer cnlsc2
 
real, pointer cnlsc3
 
real, dimension(:,:), pointer snsst
 
real, pointer sbtc1
 
real, dimension(:), pointer sbtcx
 
real, pointer sdbc1
 
real, pointer sdbc2
 
logical, pointer fdonly
 
real, pointer sdbsc
 
character(len=:), pointer uostfilelocal
 
character(len=:), pointer uostfileshadow
 
real, pointer uostfactorlocal
 
real, pointer uostfactorshadow
 
logical, pointer fsn
 
logical, pointer fspsi
 
logical, pointer fsfct
 
logical, pointer fsnimp
 
logical, pointer fstotalimp
 
logical, pointer fstotalexp
 
logical, pointer fsrefraction
 
logical, pointer fsfreqshift
 
logical, pointer fssource
 
logical, pointer fsbccfl
 
logical, pointer do_change_wlv
 
real(8), pointer solverthr_stp
 
real(8), pointer crit_dep_stp
 
logical, pointer b_jgs_terminate_maxiter
 
logical, pointer b_jgs_terminate_difference
 
logical, pointer b_jgs_terminate_norm
 
logical, pointer b_jgs_limiter
 
logical, pointer b_jgs_use_jacobi
 
logical, pointer b_jgs_block_gauss_seidel
 
integer, pointer b_jgs_maxiter
 
integer, pointer b_jgs_limiter_func
 
real(8), pointer b_jgs_pmin
 
real(8), pointer b_jgs_diff_thr
 
real(8), pointer b_jgs_norm_thr
 
integer, pointer b_jgs_nlevel
 
logical, pointer b_jgs_source_nonlinear
 
real, pointer is1c1
 
real, pointer is1c2
 

Function/Subroutine Documentation

◆ w3dims()

subroutine w3gdatmd::w3dims ( integer, intent(in)  IMOD,
integer, intent(in)  MK,
integer, intent(in)  MTH,
integer, intent(in)  NDSE,
integer, intent(in)  NDST 
)

Definition at line 1925 of file w3gdatmd.F90.

1925  !/
1926  !/ +-----------------------------------+
1927  !/ | WAVEWATCH III NOAA/NCEP |
1928  !/ | H. L. Tolman |
1929  !/ | FORTRAN 90 |
1930  !/ | Last update : 10-Dec-2014 !
1931  !/ +-----------------------------------+
1932  !/
1933  !/ 19-Feb-2004 : Origination. ( version 3.06 )
1934  !/ 18-Jul-2006 : Add input grids. ( version 3.10 )
1935  !/ 05-Oct-2006 : Add filter to array pointers. ( version 3.10 )
1936  !/ 10-Dec-2014 : Add checks for allocate status ( version 5.04 )
1937  !/
1938  ! 1. Purpose :
1939  !
1940  ! Initialize an individual spatial grid at the proper dimensions.
1941  !
1942  ! 2. Method :
1943  !
1944  ! Allocate directly into the structure array GRIDS. Note that
1945  ! this cannot be done through the pointer alias!
1946  !
1947  ! 3. Parameters :
1948  !
1949  ! Parameter list
1950  ! ----------------------------------------------------------------
1951  ! IMOD Int. I Model number to point to.
1952  ! NDSE Int. I Error output unit number.
1953  ! MK,MTH Int. I Spectral dimensions.
1954  ! NDST Int. I Test output unit number.
1955  ! ----------------------------------------------------------------
1956  !
1957  ! 4. Subroutines used :
1958  !
1959  ! See module documentation.
1960  !
1961  ! 5. Called by :
1962  !
1963  ! Name Type Module Description
1964  ! ----------------------------------------------------------------
1965  ! W3IOGR Subr. W3IOGRMD Model definition file IO program.
1966  ! WW3_GRID Prog. N/A Model set up program.
1967  ! ----------------------------------------------------------------
1968  !
1969  ! 6. Error messages :
1970  !
1971  ! - Check on input parameters.
1972  ! - Check on previous allocation.
1973  !
1974  ! 7. Remarks :
1975  !
1976  ! - Grid dimensions apre passed through parameter list and then
1977  ! locally stored to assure consistency between allocation and
1978  ! data in structure.
1979  ! - W3SETG needs to be called after allocation to point to
1980  ! proper allocated arrays.
1981  !
1982  ! 8. Structure :
1983  !
1984  ! See source code.
1985  !
1986  ! 9. Switches :
1987  !
1988  ! !/S Enable subroutine tracing.
1989  !
1990  ! 10. Source code :
1991  !
1992  !/ ------------------------------------------------------------------- /
1993  USE w3servmd, ONLY: extcde
1994 #ifdef W3_ST4
1995  USE constants, ONLY: rade
1996 #endif
1997 #ifdef W3_S
1998  USE w3servmd, ONLY: strace
1999 #endif
2000  !
2001  IMPLICIT NONE
2002  !
2003  !/
2004  !/ ------------------------------------------------------------------- /
2005  !/ Parameter list
2006  !/
2007  INTEGER, INTENT(IN) :: IMOD, MK, MTH, NDSE, NDST
2008  !/
2009  !/ ------------------------------------------------------------------- /
2010  !/ Local parameters
2011  !/
2012  INTEGER, SAVE :: MK2, MSPEC
2013 #ifdef W3_ST4
2014  INTEGER :: SDSNTH
2015 #endif
2016 #ifdef W3_S
2017  INTEGER, SAVE :: IENT = 0
2018  CALL strace (ient, 'W3DIMS')
2019 #endif
2020  !
2021  ! -------------------------------------------------------------------- /
2022  ! 1. Test input and module status
2023  !
2024  IF ( ngrids .EQ. -1 ) THEN
2025  WRITE (ndse,1001)
2026  CALL extcde (1)
2027  END IF
2028  !
2029  IF ( imod.LT.-nauxgr .OR. imod.GT.ngrids ) THEN
2030  WRITE (ndse,1002) imod, -nauxgr, ngrids
2031  CALL extcde (2)
2032  END IF
2033  !
2034  IF ( mk.LT.3 .OR. mth.LT.4 ) THEN
2035  WRITE (ndse,1003) mk, mth
2036  CALL extcde (3)
2037  END IF
2038  !
2039  IF ( sgrds(imod)%SINIT ) THEN
2040  WRITE (ndse,1004)
2041  CALL extcde (4)
2042  END IF
2043  !
2044  mk2 = mk + 2
2045  mspec = mk * mth
2046 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMS)
2047  WRITE (ndst,9000) imod, mth, mk, mk2, mspec
2048 #endif
2049  !
2050  ! -------------------------------------------------------------------- /
2051  ! 2. Allocate arrays
2052  !
2053  ALLOCATE ( sgrds(imod)%MAPWN(mspec+mth), &
2054  sgrds(imod)%MAPTH(mspec+mth), &
2055  sgrds(imod)%TH(mth), &
2056  sgrds(imod)%ESIN(mspec+mth), &
2057  sgrds(imod)%ECOS(mspec+mth), &
2058  sgrds(imod)%ES2(mspec+mth), &
2059  sgrds(imod)%ESC(mspec+mth), &
2060  sgrds(imod)%EC2(mspec+mth), &
2061  sgrds(imod)%SIG(0:mk+1), &
2062  sgrds(imod)%SIG2(mspec), &
2063  sgrds(imod)%DSIP(0:mk+1), &
2064  sgrds(imod)%DSII(mk), &
2065  sgrds(imod)%DDEN(mk), &
2066  sgrds(imod)%DDEN2(mspec), &
2067  stat=istat )
2068  check_alloc_status( istat )
2069  sgrds(imod)%MAPWN(:)=0.
2070  sgrds(imod)%MAPTH(:)=0.
2071  sgrds(imod)%TH(:)=0.
2072  sgrds(imod)%ESIN(:)=0.
2073  sgrds(imod)%ECOS(:)=0.
2074  sgrds(imod)%ES2(:)=0.
2075  sgrds(imod)%ESC(:)=0.
2076  sgrds(imod)%EC2(:)=0.
2077  sgrds(imod)%SIG(:)=0.
2078  sgrds(imod)%SIG2(:)=0.
2079  sgrds(imod)%DSIP(:)=0.
2080  sgrds(imod)%DSII(:)=0.
2081  sgrds(imod)%DDEN(:)=0.
2082  sgrds(imod)%DDEN2(:)=0.
2083 #ifdef W3_ST4
2084  ALLOCATE ( mpars(imod)%SRCPS%IKTAB(mk,ndtab), &
2085  mpars(imod)%SRCPS%DCKI(nkhs,nkd), &
2086  mpars(imod)%SRCPS%QBI(nkhs,nkd), &
2087  stat=istat )
2088  check_alloc_status( istat )
2089  mpars(imod)%SRCPS%IKTAB(:,:)=0.
2090  mpars(imod)%SRCPS%DCKI(:,:)=0.
2091  mpars(imod)%SRCPS%QBI(:,:)=0.
2092  sdsnth = mth/2-1 !MIN(NINT(SSDSDTH/(DTH*RADE)),MTH/2-1)
2093  ALLOCATE( mpars(imod)%SRCPS%SATINDICES(2*sdsnth+1,mth), &
2094  mpars(imod)%SRCPS%SATWEIGHTS(2*sdsnth+1,mth), &
2095  mpars(imod)%SRCPS%CUMULW(mspec,mspec), &
2096  stat=istat )
2097  check_alloc_status( istat )
2098  mpars(imod)%SRCPS%SATINDICES(:,:)=0.
2099  mpars(imod)%SRCPS%SATWEIGHTS(:,:)=0.
2100  mpars(imod)%SRCPS%CUMULW(:,:)=0.
2101 #endif
2102  !
2103  sgrds(imod)%SINIT = .true.
2104 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMS)
2105  WRITE (ndst,9001)
2106 #endif
2107  !
2108  ! -------------------------------------------------------------------- /
2109  ! 3. Point to allocated arrays
2110  !
2111  CALL w3setg ( imod, ndse, ndst )
2112 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMS)
2113  WRITE (ndst,9002)
2114 #endif
2115  !
2116  ! -------------------------------------------------------------------- /
2117  ! 4. Update counters in grid
2118  !
2119  nk = mk
2120  nk2 = mk + 2
2121  nth = mth
2122  nspec = mk * mth
2123 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMS)
2124  WRITE (ndst,9003)
2125 #endif
2126  !
2127  RETURN
2128  !
2129  ! Formats
2130  !
2131 1001 FORMAT (/' *** ERROR W3DIMS : GRIDS NOT INITIALIZED *** '/ &
2132  ' RUN W3NMOD FIRST '/)
2133 1002 FORMAT (/' *** ERROR W3DIMS : ILLEGAL MODEL NUMBER *** '/ &
2134  ' IMOD = ',i10/ &
2135  ' NAUXGR = ',i10/ &
2136  ' NGRIDS = ',i10/)
2137 1003 FORMAT (/' *** ERROR W3DIMS : ILLEGAL GRID DIMENSION(S) *** '/ &
2138  ' INPUT = ',4i10/)
2139 1004 FORMAT (/' *** ERROR W3DIMS : ARRAY(S) ALREADY ALLOCATED *** ')
2140 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMS)
2141 9000 FORMAT (' TEST W3DIMS : MODEL ',i4,' DIM. AT ',3i5,i7)
2142 9001 FORMAT (' TEST W3DIMS : ARRAYS ALLOCATED')
2143 9002 FORMAT (' TEST W3DIMS : POINTERS RESET')
2144 9003 FORMAT (' TEST W3DIMS : DIMENSIONS STORED')
2145 #endif
2146  !/
2147  !/ End of W3DIMS ----------------------------------------------------- /
2148  !/

References mpars, nauxgr, ndtab, ngrids, nk, nk2, nkd, nkhs, nspec, nth, constants::rade, sgrds, w3servmd::strace(), and w3setg().

Referenced by wminitmd::wminit(), and wminitmd::wminitnml().

◆ w3dimug()

subroutine w3gdatmd::w3dimug ( integer, intent(in)  IMOD,
integer, intent(in)  MTRI,
integer, intent(in)  MX,
integer, intent(in)  COUNTOTA,
integer, intent(in)  NNZ,
integer, intent(in)  NDSE,
integer, intent(in)  NDST 
)

Definition at line 3106 of file w3gdatmd.F90.

3106  !/
3107  !/ +-----------------------------------+
3108  !/ | WAVEWATCH-III NOAA/NCEP |
3109  !/ | F.ardhuin |
3110  !/ | FORTRAN 90 |
3111  !/ | Last update : 15-Mar-2007 !
3112  !/ +-----------------------------------+
3113  !/
3114  !/ 15-Mar-2007 : Origination. ( version 3.14 )
3115  !/ 11-May-2015 : Updates to 2-ways nestings for UG ( version 5.08 )
3116  !/
3117  ! 1. Purpose :
3118  !
3119  ! Initialize an individual spatial grid at the proper dimensions.
3120  !
3121  ! 2. Method :
3122  !
3123  ! Allocate directly into the structure array GRIDS. Note that
3124  ! this cannot be done through the pointer alias!
3125  !
3126  ! 3. Parameters :
3127  !
3128  ! Parameter list
3129  ! ----------------------------------------------------------------
3130  ! IMOD Int. I Model number to point to.
3131  ! NDSE Int. I Error output unit number.
3132  ! NDST Int. I Test output unit number.
3133  ! MX, MTRI, MSEA Like NX, NTRI, NSEA in data structure.
3134  ! ----------------------------------------------------------------
3135  !
3136  ! 4. Subroutines used :
3137  !
3138  ! See module documentation.
3139  !
3140  ! 5. Called by :
3141  !
3142  ! Name Type Module Description
3143  ! ----------------------------------------------------------------
3144  ! W3IOGR Subr. W3IOGRMD Model definition file IO program.
3145  ! WW3_GRID Prog. N/A Model set up program.
3146  ! ----------------------------------------------------------------
3147  !
3148  ! 6. Error messages :
3149  !
3150  ! - Check on input parameters.
3151  ! - Check on previous allocation.
3152  !
3153  ! 7. Remarks :
3154  !
3155  ! - Grid dimensions apre passed through parameter list and then
3156  ! locally stored to assure consistency between allocation and
3157  ! data in structure.
3158  ! - W3SETG needs to be called after allocation to point to
3159  ! proper allocated arrays.
3160  !
3161  ! 8. Structure :
3162  !
3163  ! See source code.
3164  !
3165  ! 9. Switches :
3166  !
3167  ! !/S Enable subroutine tracing.
3168  !
3169  ! 10. Source code :
3170  !
3171  !/ ------------------------------------------------------------------- /
3172  USE w3servmd, ONLY: extcde
3173 #ifdef W3_S
3174  USE w3servmd, ONLY: strace
3175 #endif
3176  !
3177  IMPLICIT NONE
3178  !
3179  !/
3180  !/ ------------------------------------------------------------------- /
3181  !/ Parameter list
3182  !/
3183  INTEGER, INTENT(IN) :: IMOD, MTRI, MX, COUNTOTA, NNZ, NDSE, NDST
3184  INTEGER :: IAPROC = 1
3185  !/
3186  !/ ------------------------------------------------------------------- /
3187  !/ Local parameters
3188  !/
3189 #ifdef W3_S
3190  INTEGER, SAVE :: IENT = 0
3191  CALL strace (ient, 'W3DIMUG')
3192 #endif
3193  !
3194  ! -------------------------------------------------------------------- /
3195  ! 1. Test input and module status
3196  !
3197  IF ( ngrids .EQ. -1 ) THEN
3198  WRITE (ndse,1001)
3199  CALL extcde (1)
3200  END IF
3201  !
3202  IF ( imod.LT.-nauxgr .OR. imod.GT.ngrids ) THEN
3203  WRITE (ndse,1002) imod, ngrids
3204  CALL extcde (2)
3205  END IF
3206  IF ( grids(imod)%GUGINIT ) THEN
3207  WRITE (ndse,1004)
3208  CALL extcde (4)
3209  END IF
3210  !
3211 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMUG)
3212  WRITE (ndst,9000) imod, mx, mtri
3213 #endif
3214  !
3215  ! -------------------------------------------------------------------- /
3216  ! 2. Allocate arrays
3217  !
3218  ALLOCATE ( grids(imod)%TRIGP(3,mtri), &
3219  grids(imod)%SI(mx), &
3220  grids(imod)%XGRD(1,mx), &
3221  grids(imod)%YGRD(1,mx), &
3222  grids(imod)%ZB(mx), &
3223  grids(imod)%TRIA(mtri), &
3224  grids(imod)%CROSSDIFF(6,mtri), &
3225  grids(imod)%IEN(mtri,6), &
3226  grids(imod)%LEN(mtri,3), &
3227  grids(imod)%ANGLE(mtri,3), &
3228  grids(imod)%ANGLE0(mtri,3), &
3229  grids(imod)%CCON(mx), &
3230  grids(imod)%COUNTCON(mx), &
3231  grids(imod)%INDEX_CELL(mx+1), &
3232  grids(imod)%IE_CELL(countota), &
3233  grids(imod)%POS_CELL(countota), &
3234  grids(imod)%IAA(nx+1), &
3235  grids(imod)%JAA(nnz), &
3236  grids(imod)%POSI(3,countota), &
3237  grids(imod)%I_DIAG(nx), &
3238  grids(imod)%JA_IE(3,3,mtri), &
3239  grids(imod)%IOBP(mx), &
3240  grids(imod)%IOBPD(nth,mx), &
3241  grids(imod)%IOBDP(mx), &
3242  grids(imod)%IOBPA(mx), &
3243  stat=istat )
3244  check_alloc_status( istat )
3245  !
3246  grids(imod)%IOBP(:)=1
3247 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMUG)
3248  WRITE (ndst,9001)
3249 #endif
3250  !
3251  !some segmentation troubles can appear, they are related with the allocation of
3252  !normal(1st dimension) and the nesting of the triangulated grid.
3253  ! -------------------------------------------------------------------- /
3254  ! 3. Point to allocated arrays
3255  !
3256  CALL w3setg ( imod, ndse, ndst )
3257 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMUG)
3258  WRITE (ndst,9002)
3259 #endif
3260  !
3261  ! -------------------------------------------------------------------- /
3262  ! 4. Update counters in grid
3263  ! Note that in the case of lon/lat grids, these quantities do not
3264  ! include the spherical coordinate metric (SPHERE=.FALSE.).
3265  !
3266  ntri = mtri
3267  countot=countota
3268  grids(imod)%GUGINIT = .true.
3269 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMUG)
3270  WRITE (ndst,9003)
3271 #endif
3272  RETURN
3273  !
3274  ! Formats
3275  !
3276 1001 FORMAT (/' *** ERROR W3DIMUG : GRIDS NOT INITIALIZED *** '/ &
3277  ' RUN W3NMOD FIRST '/)
3278 1002 FORMAT (/' *** ERROR W3DIMUG : ILLEGAL MODEL NUMBER *** '/ &
3279  ' IMOD = ',i10/ &
3280  ' NGRIDS = ',i10/)
3281 1004 FORMAT (/' *** ERROR W3DIMUG : ARRAY(S) ALREADY ALLOCATED *** ')
3282 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMUG)
3283 9000 FORMAT (' TEST W3DIMUG: MODEL ',i4,' DIM. AT ',2i5,i7)
3284 9001 FORMAT (' TEST W3DIMUG : ARRAYS ALLOCATED')
3285 9002 FORMAT (' TEST W3DIMUG : POINTERS RESET')
3286 9003 FORMAT (' TEST W3DIMUG : DIMENSIONS STORED')
3287 #endif
3288  !/
3289  !/ End of W3DIMUG ----------------------------------------------------- /
3290  !/

References countot, grids, nauxgr, ngrids, nth, ntri, nx, w3servmd::strace(), and w3setg().

Referenced by w3triamd::readmsh().

◆ w3dimx()

subroutine w3gdatmd::w3dimx ( integer, intent(in)  IMOD,
integer, intent(in)  MX,
integer, intent(in)  MY,
integer, intent(in)  MSEA,
integer, intent(in)  NDSE,
integer, intent(in)  NDST,
  ifdef,
  W3_SMC 
)

Definition at line 1582 of file w3gdatmd.F90.

1582  , mcel, mufc, mvfc, mrlv, mbsmc &
1583  , marc, mbac, mspec &
1584 #endif
1585  )
1586  !/
1587  !/ +-----------------------------------+
1588  !/ | WAVEWATCH III NOAA/NCEP |
1589  !/ | H. L. Tolman |
1590  !/ | FORTRAN 90 |
1591  !/ | Last update : 10-Dec-2014 |
1592  !/ +-----------------------------------+
1593  !/
1594  !/ 24-Jun-2005 : Origination. ( version 3.07 )
1595  !/ 18-Jul-2006 : Add input grids. ( version 3.10 )
1596  !/ 05-Oct-2006 : Add filter to array pointers. ( version 3.10 )
1597  !/ 02-Feb-2007 : Add FLAGST. ( version 3.10 )
1598  !/ 30-Oct-2009 : Implement run-time grid selection. ( version 3.14 )
1599  !/ (W. E. Rogers & T. J. Campbell, NRL)
1600  !/ 30-Oct-2009 : Implement curvilinear grid type. ( version 3.14 )
1601  !/ (W. E. Rogers & T. J. Campbell, NRL)
1602  !/ 30-Oct-2009 : Implement unstructured grids ( version 3.14.1)
1603  !/ 03-Sep-2012 : Clean up of UG grids ( version 4.08 )
1604  !/ 10-Dec-2014 : Add checks for allocate status ( version 5.04 )
1605  !/
1606  ! 1. Purpose :
1607  !
1608  ! Initialize an individual spatial grid at the proper dimensions.
1609  !
1610  ! 2. Method :
1611  !
1612  ! Allocate directly into the structure array GRIDS. Note that
1613  ! this cannot be done through the pointer alias!
1614  !
1615  ! 3. Parameters :
1616  !
1617  ! Parameter list
1618  ! ----------------------------------------------------------------
1619  ! IMOD Int. I Model number to point to.
1620  ! NDSE Int. I Error output unit number.
1621  ! NDST Int. I Test output unit number.
1622  ! MX, MY, MSEA Like NX, NY, NSEA in data structure.
1623  ! ----------------------------------------------------------------
1624  !
1625  ! 4. Subroutines used :
1626  !
1627  ! See module documentation.
1628  !
1629  ! 5. Called by :
1630  !
1631  ! Name Type Module Description
1632  ! ----------------------------------------------------------------
1633  ! W3IOGR Subr. W3IOGRMD Model definition file IO program.
1634  ! WW3_GRID Prog. N/A Model set up program.
1635  ! ----------------------------------------------------------------
1636  !
1637  ! 6. Error messages :
1638  !
1639  ! - Check on input parameters.
1640  ! - Check on previous allocation.
1641  !
1642  ! 7. Remarks :
1643  !
1644  ! - Grid dimensions apre passed through parameter list and then
1645  ! locally stored to assure consistency between allocation and
1646  ! data in structure.
1647  ! - W3SETG needs to be called after allocation to point to
1648  ! proper allocated arrays.
1649  !
1650  ! 8. Structure :
1651  !
1652  ! See source code.
1653  !
1654  ! 9. Switches :
1655  !
1656  ! !/S Enable subroutine tracing.
1657  !
1658  ! 10. Source code :
1659  !
1660  !/ ------------------------------------------------------------------- /
1661  USE w3servmd, ONLY: extcde
1662 #ifdef W3_S
1663  USE w3servmd, ONLY: strace
1664 #endif
1665  !
1666  IMPLICIT NONE
1667  !
1668  !/
1669  !/ ------------------------------------------------------------------- /
1670  !/ Parameter list
1671  !/
1672  INTEGER, INTENT(IN) :: IMOD, MX, MY, MSEA, NDSE, NDST
1673 #ifdef W3_SMC
1674  INTEGER, INTENT(IN) :: MCel, MUFc, MVFc, MRLv, MBSMC
1675  INTEGER, INTENT(IN) :: MARC, MBAC, MSPEC
1676 #endif
1677  !/
1678  !/ ------------------------------------------------------------------- /
1679  !/ Local parameters
1680  !/
1681 #ifdef W3_SMC
1682  INTEGER :: IARC, IBAC, IBSMC
1683 #endif
1684 #ifdef W3_S
1685  INTEGER, SAVE :: IENT = 0
1686  CALL strace (ient, 'W3DIMX')
1687 #endif
1688  !
1689  ! -------------------------------------------------------------------- /
1690  ! 1. Test input and module status
1691  !
1692  IF ( ngrids .EQ. -1 ) THEN
1693  WRITE (ndse,1001)
1694  CALL extcde (1)
1695  END IF
1696  !
1697  IF ( imod.LT.-nauxgr .OR. imod.GT.ngrids ) THEN
1698  WRITE (ndse,1002) imod, -nauxgr, ngrids
1699  CALL extcde (2)
1700  END IF
1701  !
1702  IF ( mx.LT.3 .OR. (my.LT.3.AND.gtype.NE.ungtype) .OR. msea.LT.1 ) THEN
1703  WRITE (ndse,1003) mx, my, msea, gtype
1704  CALL extcde (3)
1705  END IF
1706  !
1707  IF ( grids(imod)%GINIT ) THEN
1708  WRITE (ndse,1004)
1709  CALL extcde (4)
1710  END IF
1711 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMX)
1712  WRITE (ndst,9000) imod, mx, my, msea
1713 #endif
1714  !
1715  ! -------------------------------------------------------------------- /
1716  ! 2. Allocate arrays
1717  !
1718  ! NB: Some array start at 0 because MAPFS(IY,IX)=0 for missing points
1719  !
1720  IF (gtype .NE. ungtype) THEN
1721  ALLOCATE ( grids(imod)%ZB(msea), &
1722  grids(imod)%XGRD(my,mx), &
1723  grids(imod)%YGRD(my,mx), &
1724  stat=istat )
1725  check_alloc_status( istat )
1726  ENDIF
1727 
1728  ALLOCATE ( grids(imod)%MAPSTA(my,mx), &
1729  grids(imod)%MAPST2(my,mx), &
1730  grids(imod)%MAPFS(my,mx), &
1731  grids(imod)%MAPSF(msea,3), &
1732  grids(imod)%FLAGST(msea), &
1733 #ifdef W3_RTD
1734  grids(imod)%AnglD(msea), &
1735 #endif
1736  grids(imod)%CLATS(0:msea), &
1737  grids(imod)%CLATIS(0:msea), &
1738  grids(imod)%CTHG0S(0:msea), &
1739  grids(imod)%TRNX(my,mx), &
1740  grids(imod)%TRNY(my,mx), &
1741  grids(imod)%DXDP(my,mx), &
1742  grids(imod)%DXDQ(my,mx), &
1743  grids(imod)%DYDP(my,mx), &
1744  grids(imod)%DYDQ(my,mx), &
1745  grids(imod)%DPDX(my,mx), &
1746  grids(imod)%DPDY(my,mx), &
1747  grids(imod)%DQDX(my,mx), &
1748  grids(imod)%DQDY(my,mx), &
1749  grids(imod)%GSQRT(my,mx), &
1750  grids(imod)%HPFAC(my,mx), &
1751  grids(imod)%HQFAC(my,mx), &
1752  stat=istat )
1753  check_alloc_status( istat )
1754 #ifdef W3_BT4
1755  ALLOCATE ( grids(imod)%SED_D50(0:msea), &
1756  grids(imod)%SED_PSIC(0:msea),&
1757  stat=istat )
1758  check_alloc_status( istat )
1759 #endif
1760  !
1761 #ifdef W3_SMC
1762  ALLOCATE ( grids(imod)%NLvCel(0:mrlv), &
1763  grids(imod)%NLvUFc(0:mrlv), &
1764  grids(imod)%NLvVFc(0:mrlv), &
1765  grids(imod)%IJKCel(4, -9:mcel), &
1766  grids(imod)%IJKUFc(7,mufc), &
1767  grids(imod)%IJKVFc(7,mvfc), &
1768  grids(imod)%CTRNX(-9:mcel), &
1769  grids(imod)%CTRNY(-9:mcel), &
1770  grids(imod)%CLATF(mvfc), &
1771  stat=istat )
1772  check_alloc_status( istat )
1773 
1774  ALLOCATE ( grids(imod)%IJKCel3(-9:mcel), &
1775  grids(imod)%IJKCel4(-9:mcel), &
1776  grids(imod)%IJKVFc5(mvfc), &
1777  grids(imod)%IJKVFc6(mvfc), &
1778  grids(imod)%IJKUFc5(mufc), &
1779  grids(imod)%IJKUFc6(mufc), &
1780  stat=istat)
1781  !! Arctic part related variables, declare minimum 1 element.
1782  iarc = marc
1783  IF( marc .LE. 1 ) iarc = 1
1784  ibac = mbac
1785  IF( mbac .LE. 1 ) ibac = 1
1786  ibsmc = mbsmc
1787  IF( mbsmc .LE. 1 ) ibsmc = 1
1788  ALLOCATE ( grids(imod)%ICLBAC(ibac), &
1789  grids(imod)%ANGARC(iarc), &
1790  grids(imod)%SPCBAC(mspec,ibac), &
1791  grids(imod)%ISMCBP(ibsmc), &
1792  stat=istat )
1793  check_alloc_status( istat )
1794  !! All SMC grid related varialbes are initialised in case SMC
1795  !! switch is selected but SMCTYPE is not used. JGLi08Mar2021
1796  grids(imod)%NLvCel(:) = 0
1797  grids(imod)%NLvUFc(:) = 0
1798  grids(imod)%NLvVFc(:) = 0
1799  grids(imod)%ISMCBP(:) = 0
1800  grids(imod)%ICLBAC(:) = 0
1801  grids(imod)%IJKCel(:,:) = 0
1802  grids(imod)%IJKUFc(:,:) = 0
1803  grids(imod)%IJKVFc(:,:) = 0
1804  grids(imod)%CTRNX(:) = 0.0
1805  grids(imod)%CTRNY(:) = 0.0
1806  grids(imod)%CLATF(:) = 0.0
1807  grids(imod)%ANGARC(:) = 0.0
1808 #endif
1809  !
1810  grids(imod)%FLAGST = .true.
1811  grids(imod)%GINIT = .true.
1812  grids(imod)%MAPSF(:,3)=0.
1813  grids(imod)%CLATS(0)=1.
1814  grids(imod)%CLATIS(0)=1.
1815  grids(imod)%CTHG0S(0)=1.
1816  !
1817 #ifdef W3_REF1
1818  ALLOCATE ( grids(imod)%RREF(4), &
1819  grids(imod)%REFPARS(10), &
1820  stat=istat )
1821  check_alloc_status( istat )
1822  !
1823  grids(imod)%RREF(:)=.false.
1824  grids(imod)%REFPARS(:)=0.
1825  !
1826  ! Memory footprint can be reduced by defining REFLC and REFLD only over nodes
1827  ! where reflection can occur.
1828  ALLOCATE ( grids(imod)%REFLC(4,0:nsea), &
1829  grids(imod)%REFLD(6,0:nsea), &
1830  stat=istat )
1831  check_alloc_status( istat )
1832 #endif
1833 #ifdef W3_IG1
1834  ALLOCATE ( grids(imod)%IGPARS(12), stat=istat )
1835  check_alloc_status( istat )
1836 #endif
1837 #ifdef W3_IC2
1838  ALLOCATE ( grids(imod)%IC2PARS(9), stat=istat )
1839  check_alloc_status( istat )
1840 #endif
1841 #ifdef W3_IC3
1842  ALLOCATE ( grids(imod)%IC3PARS(16), stat=istat )
1843  check_alloc_status( istat )
1844 #endif
1845 
1846 #ifdef W3_IC4
1847  ALLOCATE ( grids(imod)%IC4PARS(1), stat=istat )
1848  check_alloc_status( istat )
1849  ALLOCATE ( grids(imod)%IC4_KI(nic4), stat=istat )
1850  check_alloc_status( istat )
1851  ALLOCATE ( grids(imod)%IC4_FC(nic4), stat=istat )
1852  check_alloc_status( istat )
1853  ALLOCATE ( grids(imod)%IC4_CN(nic42), stat=istat )
1854  check_alloc_status( istat )
1855 #endif
1856 #ifdef W3_IC5
1857  ALLOCATE ( grids(imod)%IC5PARS(9), stat=istat )
1858  check_alloc_status( istat )
1859 #endif
1860 #ifdef W3_IS2
1861  ALLOCATE ( grids(imod)%IS2PARS(24), stat=istat )
1862  check_alloc_status( istat )
1863 #endif
1864 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMX)
1865  WRITE (ndst,9001)
1866 #endif
1867  !
1868 #ifdef W3_REF1
1869  grids(imod)%REFLC(1:4,0:nsea)=0.
1870  grids(imod)%REFLD(:,:)=0
1871 #endif
1872 #ifdef W3_IG1
1873  grids(imod)%IGPARS(:)=0.
1874 #endif
1875 #ifdef W3_IC2
1876  grids(imod)%IC2PARS(:)=0.
1877 #endif
1878 #ifdef W3_IS2
1879  grids(imod)%IS2PARS(:)=0.
1880 #endif
1881  !
1882  ! -------------------------------------------------------------------- /
1883  ! 2. Update counters in grid
1884  !
1885  grids(imod)%NX = mx
1886  grids(imod)%NY = my
1887  grids(imod)%NSEA = msea
1888 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMX)
1889  WRITE (ndst,9002)
1890 #endif
1891  !
1892  ! -------------------------------------------------------------------- /
1893  ! 3. Point to allocated arrays
1894  !
1895  CALL w3setg ( imod, ndse, ndst )
1896 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMX)
1897  WRITE (ndst,9003)
1898 #endif
1899  !
1900  RETURN
1901  !
1902  ! Formats
1903  !
1904 1001 FORMAT (/' *** ERROR W3DIMX : GRIDS NOT INITIALIZED *** '/ &
1905  ' RUN W3NMOD FIRST '/)
1906 1002 FORMAT (/' *** ERROR W3DIMX : ILLEGAL MODEL NUMBER *** '/ &
1907  ' IMOD = ',i10/ &
1908  ' NAUXGR = ',i10/ &
1909  ' NGRIDS = ',i10/)
1910 1003 FORMAT (/' *** ERROR W3DIMX : ILLEGAL GRID DIMENSION(S) *** '/ &
1911  ' INPUT = ',4i10 /)
1912 1004 FORMAT (/' *** ERROR W3DIMX : ARRAY(S) ALREADY ALLOCATED *** ')
1913 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3DIMX)
1914 9000 FORMAT (' TEST W3DIMX : MODEL ',i4,' DIM. AT ',2i5,i7)
1915 9001 FORMAT (' TEST W3DIMX : ARRAYS ALLOCATED')
1916 9002 FORMAT (' TEST W3DIMX : DIMENSIONS STORED')
1917 9003 FORMAT (' TEST W3DIMX : POINTERS RESET')
1918 #endif
1919  !/
1920  !/ End of W3DIMX ----------------------------------------------------- /
1921  !/

References grids, gtype, nauxgr, ngrids, nic4, nic42, nsea, w3servmd::strace(), ungtype, and w3setg().

Referenced by wminitmd::wminit(), and wminitmd::wminitnml().

◆ w3gntx()

subroutine w3gdatmd::w3gntx ( integer, intent(in)  IMOD,
integer, intent(in)  NDSE,
integer, intent(in)  NDST 
)

Definition at line 2881 of file w3gdatmd.F90.

2881  !/
2882  !/ +-----------------------------------+
2883  !/ | WAVEWATCH-III NOAA/NCEP |
2884  !/ | T. J. Campbell |
2885  !/ | FORTRAN 90 |
2886  !/ | Last update : 20-Jul-2011 |
2887  !/ +-----------------------------------+
2888  !/
2889  !/ 30-Oct-2009 : Origination. ( version 3.13 )
2890  !/ 06-Dec-2010 : Change from GLOBAL (logical) to ICLOSE (integer) to
2891  !/ specify index closure for a grid. ( version 3.14 )
2892  !/ (T. J. Campbell, NRL)
2893  !/ 23-Dec-2010 : Fix HPFAC and HQFAC by including the COS(YGRD)
2894  !/ factor with DXDP and DXDQ terms. ( version 3.14 )
2895  !/ (T. J. Campbell, NRL)
2896  !/ 20-Jul-2011 : HPFAC and HQFAC are now calculated using W3DIST.
2897  !/ Result should be very similar except near pole.
2898  !/ Due to precision issues, HPFAC and HQFAC revert
2899  !/ to SX and SY in case of regular grids.
2900  !/ (W. E. Rogers, NRL) ( version 3.14 )
2901  !/ 20-Jan-2017 : Update to new W3GSRUMD APIs ( version 6.02 )
2902  !/ 20-Jan-2017 : Change calculation of curvilinear grid metric and
2903  !/ derivatives calculations to use W3GSRUMD:W3CGDM.
2904  !/ (T.J. Campbell, NRL) ( version 6.02 )
2905  !/
2906  ! 1. Purpose :
2907  !
2908  ! Construct required spatial grid quantities for curvilinear grids.
2909  !
2910  ! 2. Method :
2911  !
2912  ! 3. Parameters :
2913  !
2914  ! Parameter list
2915  ! ----------------------------------------------------------------
2916  ! IMOD Int. I Model number to point to.
2917  ! NDSE Int. I Error output unit number.
2918  ! ----------------------------------------------------------------
2919  !
2920  ! 4. Subroutines used :
2921  !
2922  ! See module documentation.
2923  !
2924  ! 5. Called by :
2925  !
2926  ! Any program that uses this grid structure.
2927  !
2928  ! 6. Error messages :
2929  !
2930  ! - Check on previous initialization of grids.
2931  !
2932  ! 7. Remarks :
2933  !
2934  ! 8. Structure :
2935  !
2936  ! 9. Switches :
2937  !
2938  ! !/S Enable subroutine tracing.
2939  !
2940  ! 10. Source code :
2941  !
2942  !/ ------------------------------------------------------------------- /
2943  USE w3servmd, ONLY: extcde
2944 #ifdef W3_S
2945  USE w3servmd, ONLY: strace
2946 #endif
2947  !
2948  IMPLICIT NONE
2949  !/
2950  !/ ------------------------------------------------------------------- /
2951  !/ Parameter list
2952  !/
2953  INTEGER, INTENT(IN) :: IMOD, NDSE, NDST
2954  !/
2955  !/ ------------------------------------------------------------------- /
2956  !/ Local parameters
2957  !/
2958  INTEGER, PARAMETER :: NFD = 4
2959  LOGICAL, PARAMETER :: PTILED = .false.
2960  LOGICAL, PARAMETER :: QTILED = .false.
2961  LOGICAL, PARAMETER :: IJG = .false.
2962  LOGICAL, PARAMETER :: SPHERE = .false.
2963  INTEGER :: PRANGE(2), QRANGE(2)
2964  INTEGER :: LBI(2), UBI(2), LBO(2), UBO(2), ISTAT
2965  REAL , ALLOCATABLE :: COSA(:,:)
2966 #ifdef W3_S
2967  INTEGER, SAVE :: IENT = 0
2968  CALL strace (ient, 'W3GNTX')
2969 #endif
2970  !
2971  ! -------------------------------------------------------------------- /
2972  ! 1. Test input and module status
2973  !
2974  IF ( ngrids .EQ. -1 ) THEN
2975  WRITE (ndse,1001)
2976  CALL extcde (1)
2977  END IF
2978  !
2979  IF ( imod.LT.-nauxgr .OR. imod.GT.ngrids ) THEN
2980  WRITE (ndse,1002) imod, -nauxgr, ngrids
2981  CALL extcde (2)
2982  END IF
2983  !
2984  SELECT CASE ( grids(imod)%GTYPE )
2985  CASE ( rlgtype )
2986  CASE ( clgtype )
2987  CASE ( smctype )
2988  CASE DEFAULT
2989  WRITE (ndse,1003) grids(imod)%GTYPE
2990  CALL extcde (3)
2991  END SELECT
2992 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3GNTX)
2993  WRITE (ndst,9000) imod
2994 #endif
2995  !
2996  ! -------------------------------------------------------------------- /
2997  ! 2. Create grid search utility object
2998  !
2999  grids(imod)%GSU = w3gsuc( ijg, flagll, grids(imod)%ICLOSE, &
3000  grids(imod)%XGRD, grids(imod)%YGRD )
3001 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3GNTX)
3002  CALL w3gsup(grids(imod)%GSU, ndst)
3003  WRITE (ndst,9001)
3004 #endif
3005  !
3006  ! -------------------------------------------------------------------- /
3007  ! 3. Reset grid pointers
3008  !
3009  CALL w3setg ( imod, ndse, ndst )
3010 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3GNTX)
3011  WRITE (ndst,9002)
3012 #endif
3013  !
3014  ! -------------------------------------------------------------------- /
3015  ! 4. Construct curvilinear grid derivatives and metric
3016  ! Note that in the case of lon/lat grids, these quantities do not
3017  ! include the spherical coordinate metric (SPHERE=.FALSE.).
3018  !
3019 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3GNTX)
3020  ALLOCATE ( cosa(ny,nx), stat=istat )
3021  check_alloc_status( istat )
3022 #endif
3023  prange = (/ 1,nx/)
3024  qrange = (/ 1,ny/)
3025  lbi = (/ 1, 1/)
3026  ubi = (/ny,nx/)
3027  lbo = (/ 1, 1/)
3028  ubo = (/ny,nx/)
3029  SELECT CASE ( gtype )
3030  !!Li SMC grid shares the settings with rectilinear grid. JGLi12Oct2020
3031  CASE ( rlgtype, smctype )
3032  CALL w3cgdm( ijg, flagll, iclose, ptiled, qtiled, &
3033  prange, qrange, lbi, ubi, lbo, ubo, real(xgrd), real(ygrd), &
3034  nfd=nfd, sphere=sphere, dx=sx, dy=sy, &
3035  dxdp=dxdp, dydp=dydp, dxdq=dxdq, dydq=dydq, &
3036  dpdx=dpdx, dpdy=dpdy, dqdx=dqdx, dqdy=dqdy, &
3037  hpfc=hpfac, hqfc=hqfac, gsqr=gsqrt, &
3038 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3GNTX)
3039  cosa=cosa, &
3040 #endif
3041  rc=istat )
3042  IF ( istat.NE.0 ) THEN
3043  WRITE (ndse,1004) gtype
3044  CALL extcde (4)
3045  END IF
3046  CASE ( clgtype )
3047  CALL w3cgdm( ijg, flagll, iclose, ptiled, qtiled, &
3048  prange, qrange, lbi, ubi, lbo, ubo, real(xgrd), real(ygrd), &
3049  nfd=nfd, sphere=sphere, &
3050  dxdp=dxdp, dydp=dydp, dxdq=dxdq, dydq=dydq, &
3051  dpdx=dpdx, dpdy=dpdy, dqdx=dqdx, dqdy=dqdy, &
3052  hpfc=hpfac, hqfc=hqfac, gsqr=gsqrt, &
3053 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3GNTX)
3054  cosa=cosa, &
3055 #endif
3056  rc=istat )
3057  IF ( istat.NE.0 ) THEN
3058  WRITE (ndse,1004) gtype
3059  CALL extcde (4)
3060  END IF
3061  END SELECT
3062  !
3063 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3GNTX)
3064  WRITE(ndst,'(A,2E14.6)')'HPFAC MIN/MAX:',minval(hpfac),maxval(hpfac)
3065  WRITE(ndst,'(A,2E14.6)')'HQFAC MIN/MAX:',minval(hqfac),maxval(hqfac)
3066  WRITE(ndst,'(A,2E14.6)')'GSQRT MIN/MAX:',minval(gsqrt),maxval(gsqrt)
3067  WRITE(ndst,'(A,2E14.6)')'DXDP MIN/MAX:',minval(dxdp),maxval(dxdp)
3068  WRITE(ndst,'(A,2E14.6)')'DYDP MIN/MAX:',minval(dydp),maxval(dydp)
3069  WRITE(ndst,'(A,2E14.6)')'DXDQ MIN/MAX:',minval(dxdq),maxval(dxdq)
3070  WRITE(ndst,'(A,2E14.6)')'DYDQ MIN/MAX:',minval(dydq),maxval(dydq)
3071  WRITE(ndst,'(A,2E14.6)')'DPDX MIN/MAX:',minval(dpdx),maxval(dpdx)
3072  WRITE(ndst,'(A,2E14.6)')'DPDY MIN/MAX:',minval(dpdy),maxval(dpdy)
3073  WRITE(ndst,'(A,2E14.6)')'DQDX MIN/MAX:',minval(dqdx),maxval(dqdx)
3074  WRITE(ndst,'(A,2E14.6)')'DQDY MIN/MAX:',minval(dqdy),maxval(dqdy)
3075  WRITE(ndst,'(A,2E14.6)')'COSA MIN/MAX:',minval(cosa),maxval(cosa)
3076  WRITE (ndst,9003)
3077  DEALLOCATE ( cosa, stat=istat )
3078  check_dealloc_status( istat )
3079 #endif
3080  !
3081  ! Formats
3082  !
3083 1001 FORMAT (/' *** ERROR W3GNTX : GRIDS NOT INITIALIZED *** '/ &
3084  ' RUN W3NMOD FIRST '/)
3085 1002 FORMAT (/' *** ERROR W3GNTX : ILLEGAL MODEL NUMBER *** '/ &
3086  ' IMOD = ',i10/ &
3087  ' NAUXGR = ',i10/ &
3088  ' NGRIDS = ',i10/)
3089 1003 FORMAT (/' *** ERROR W3GNTX : UNSUPPORTED TYPE OF GRID *** '/ &
3090  ' GTYPE = ',i10/)
3091 1004 FORMAT (/' *** ERROR W3GNTX : ERROR OCCURED IN W3CGDM *** '/ &
3092  ' GTYPE = ',i10/)
3093  !
3094 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3GNTX)
3095 9000 FORMAT (' TEST W3GNTX : MODEL ',i4)
3096 9001 FORMAT (' TEST W3GNTX : SEARCH OBJECT CREATED')
3097 9002 FORMAT (' TEST W3GNTX : POINTERS RESET')
3098 9003 FORMAT (' TEST W3GNTX : GRID ARRAYS CONSTRUCTED')
3099 #endif
3100  !/
3101  !/ End of W3GNTX ----------------------------------------------------- /
3102  !/

References clgtype, dpdx, dpdy, dqdx, dqdy, dxdp, dxdq, dydp, dydq, flagll, grids, gsqrt, gtype, hpfac, hqfac, iclose, nauxgr, ngrids, nx, ny, rlgtype, smctype, w3servmd::strace(), sx, sy, w3gsrumd::w3gsup(), w3setg(), xgrd, and ygrd.

◆ w3nmod()

subroutine w3gdatmd::w3nmod ( integer, intent(in)  NUMBER,
integer, intent(in)  NDSE,
integer, intent(in)  NDST,
integer, intent(in), optional  NAUX 
)

Definition at line 1433 of file w3gdatmd.F90.

1433  !/
1434  !/ +-----------------------------------+
1435  !/ | WAVEWATCH III NOAA/NCEP |
1436  !/ | H. L. Tolman |
1437  !/ | FORTRAN 90 |
1438  !/ | Last update : 10-Dec-2014 !
1439  !/ +-----------------------------------+
1440  !/
1441  !/ 24-Feb-2004 : Origination. ( version 3.06 )
1442  !/ 18-Jul-2006 : Add input grids. ( version 3.10 )
1443  !/ 10-Dec-2014 : Add checks for allocate status ( version 5.04 )
1444  !/
1445  ! 1. Purpose :
1446  !
1447  ! Set up the number of grids to be used.
1448  !
1449  ! 2. Method :
1450  !
1451  ! Store in NGRIDS and allocate GRIDS.
1452  !
1453  ! 3. Parameters :
1454  !
1455  ! Parameter list
1456  ! ----------------------------------------------------------------
1457  ! NUMBER Int. I Number of grids to be used.
1458  ! NDSE Int. I Error output unit number.
1459  ! NDST Int. I Test output unit number.
1460  ! NAUX Int. I Number of auxiliary grids to be used.
1461  ! Grids -NAUX:NUBMER are defined, optional
1462  ! parameters.
1463  ! ----------------------------------------------------------------
1464  !
1465  ! 4. Subroutines used :
1466  !
1467  ! See module documentation.
1468  !
1469  ! 5. Called by :
1470  !
1471  ! Any program that uses this grid structure.
1472  !
1473  ! 6. Error messages :
1474  !
1475  ! - Error checks on previous setting of variable.
1476  !
1477  ! 7. Remarks :
1478  !
1479  ! 8. Structure :
1480  !
1481  ! 9. Switches :
1482  !
1483  ! !/S Enable subroutine tracing.
1484  !
1485  ! 10. Source code :
1486  !
1487  !/ ------------------------------------------------------------------- /
1488  USE w3servmd, ONLY: extcde
1489 #ifdef W3_S
1490  USE w3servmd, ONLY: strace
1491 #endif
1492  !
1493  IMPLICIT NONE
1494  !/
1495  !/ ------------------------------------------------------------------- /
1496  !/ Parameter list
1497  !/
1498  INTEGER, INTENT(IN) :: NUMBER, NDSE, NDST
1499  INTEGER, INTENT(IN), OPTIONAL :: NAUX
1500  !/
1501  !/ ------------------------------------------------------------------- /
1502  !/ Local parameters
1503  !/
1504  INTEGER :: I, NLOW
1505 #ifdef W3_S
1506  INTEGER, SAVE :: IENT = 0
1507  CALL strace (ient, 'W3NMOD')
1508 #endif
1509  !
1510  ! -------------------------------------------------------------------- /
1511  ! 1. Test input and module status
1512  !
1513  IF ( ngrids .NE. -1 ) THEN
1514  WRITE (ndse,1001) ngrids
1515  CALL extcde (1)
1516  END IF
1517  !
1518  IF ( number .LT. 1 ) THEN
1519  WRITE (ndse,1002) number
1520  CALL extcde (2)
1521  END IF
1522  !
1523  IF ( PRESENT(naux) ) THEN
1524  nlow = -naux
1525  ELSE
1526  nlow = 1
1527  END IF
1528  !
1529  IF ( nlow .GT. 1 ) THEN
1530  WRITE (ndse,1003) -nlow
1531  CALL extcde (3)
1532  END IF
1533  !
1534  ! -------------------------------------------------------------------- /
1535  ! 1. Set variable and allocate arrays
1536  !
1537  ngrids = number
1538  nauxgr = - nlow
1539  ALLOCATE ( grids(nlow:number), &
1540  sgrds(nlow:number), &
1541  mpars(nlow:number), &
1542  stat=istat )
1543  check_alloc_status( istat )
1544  !
1545  ! -------------------------------------------------------------------- /
1546  ! 2. Initialize GINIT and SINIT
1547  !
1548  DO i=nlow, number
1549  grids(i)%GINIT = .false.
1550  grids(i)%GUGINIT = .false.
1551  sgrds(i)%SINIT = .false.
1552  mpars(i)%PINIT = .false.
1553 #ifdef W3_NL2
1554  mpars(i)%SNLPS%NDPTHS = 0
1555 #endif
1556  END DO
1557 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3NMOD)
1558  WRITE (ndst,9000) nlow, ngrids
1559 #endif
1560  !
1561  RETURN
1562  !
1563  ! Formats
1564  !
1565 1001 FORMAT (/' *** ERROR W3NMOD : GRIDS ALREADY INITIALIZED *** '/ &
1566  ' NGRIDS = ',i10/)
1567 1002 FORMAT (/' *** ERROR W3NMOD : ILLEGAL NUMBER OF GRIDS *** '/ &
1568  ' NUMBER = ',i10/)
1569 1003 FORMAT (/' *** ERROR W3NMOD : ILLEGAL NUMBER OF AUX GRIDS *** '/&
1570  ' NUMBER = ',i10/)
1571 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3NMOD)
1572 9000 FORMAT (' TEST W3NMOD : SETTING UP FOR GRIDS ',i3, &
1573  ' THROUGH ',i3)
1574 #endif
1575  !/
1576  !/ End of W3NMOD ----------------------------------------------------- /
1577  !/

References grids, mpars, nauxgr, ngrids, sgrds, and w3servmd::strace().

Referenced by gxoutf(), gxoutp(), w3bounc(), w3bound(), w3grib(), w3gridmd::w3grid(), w3ounf(), w3ounp(), w3outf(), w3outp(), w3prep(), w3prnc(), w3prtide(), w3shel(), w3strt(), w3trck(), w3trnc(), w3uprstr(), wminitmd::wminit(), and wminitmd::wminitnml().

◆ w3setg()

subroutine w3gdatmd::w3setg ( integer, intent(in)  IMOD,
integer, intent(in)  NDSE,
integer, intent(in)  NDST 
)

Definition at line 2152 of file w3gdatmd.F90.

2152  !/
2153  !/ +-----------------------------------+
2154  !/ | WAVEWATCH III NOAA/NCEP |
2155  !/ | H. L. Tolman |
2156  !/ ! J. H. Alves !
2157  !/ | FORTRAN 90 |
2158  !/ | Last update : 03-Sep-2012 |
2159  !/ +-----------------------------------+
2160  !/
2161  !/ 24-Jun-2005 : Origination. ( version 3.07 )
2162  !/ 09-Nov-2005 : Remove soft boundary options. ( version 3.08 )
2163  !/ 23-Jun-2006 : Add data for W3SLN1. ( version 3.09 )
2164  !/ 18-Jul-2006 : Add input grids. ( version 3.10 )
2165  !/ 05-Oct-2006 : Add filter to array pointers. ( version 3.10 )
2166  !/ 02-Feb-2007 : Add FLAGST. ( version 3.10 )
2167  !/ 14-Apr-2007 : Add Miche style limiter. ( version 3.11 )
2168  !/ ( J. H. Alves )
2169  !/ 25-Apr-2007 : Adding Battjes-Janssen Sdb. ( version 3.11 )
2170  !/ ( J. H. Alves )
2171  !/ 18-Sep-2007 : Adding WAM4 source terms. ( version 3.13 )
2172  !/ ( F. Ardhuin )
2173  !/ 27-Jun-2008 : Expand WAM4 variants namelist ( version 3.14 )
2174  !/ ( F. Ardhuin )
2175  !/ 30-Oct-2009 : Implement run-time grid selection. ( version 3.14 )
2176  !/ (W. E. Rogers & T. J. Campbell, NRL)
2177  !/ 30-Oct-2009 : Implement curvilinear grid type. ( version 3.14 )
2178  !/ (W. E. Rogers & T. J. Campbell, NRL)
2179  !/ 06-Dec-2010 : Change from GLOBAL (logical) to ICLOSE (integer) to
2180  !/ specify index closure for a grid. ( version 3.14 )
2181  !/ (T. J. Campbell, NRL)
2182  !/ 13-Jul-2012 : Move data structures GMD (SNL3) and nonlinear
2183  !/ filter (SNLS) from 3.15 (HLT). ( version 4.08 )
2184  !/ 03-Sep-2012 : Clean up of UG grids ( version 4.08 )
2185  !/
2186  ! 1. Purpose :
2187  !
2188  ! Select one of the WAVEWATCH III grids / models.
2189  !
2190  ! 2. Method :
2191  !
2192  ! Point pointers to the proper variables in the proper element of
2193  ! the GRIDS array.
2194  !
2195  ! 3. Parameters :
2196  !
2197  ! Parameter list
2198  ! ----------------------------------------------------------------
2199  ! IMOD Int. I Model number to point to.
2200  ! NDSE Int. I Error output unit number.
2201  ! NDST Int. I Test output unit number.
2202  ! ----------------------------------------------------------------
2203  !
2204  ! 4. Subroutines used :
2205  !
2206  ! See module documentation.
2207  !
2208  ! 5. Called by :
2209  !
2210  ! Many subroutines in eth WAVEWATCH system.
2211  !
2212  ! 6. Error messages :
2213  !
2214  ! Checks on parameter list IMOD.
2215  !
2216  ! 7. Remarks :
2217  !
2218  ! 8. Structure :
2219  !
2220  ! 9. Switches :
2221  !
2222  ! !/PRn Select propagation scheme
2223  !
2224  ! !/STn Select source terms
2225  ! !/NLn
2226  ! !/BTn
2227  !
2228  ! !/S Enable subroutine tracing.
2229  !
2230  ! 10. Source code :
2231  !
2232  !/ ------------------------------------------------------------------- /
2233  USE w3servmd, ONLY: extcde
2234 #ifdef W3_S
2235  USE w3servmd, ONLY: strace
2236 #endif
2237  !
2238  IMPLICIT NONE
2239  !
2240  !/
2241  !/ ------------------------------------------------------------------- /
2242  !/ Parameter list
2243  !/
2244  INTEGER, INTENT(IN) :: IMOD, NDSE, NDST
2245  !/
2246  !/ ------------------------------------------------------------------- /
2247  !/ Local parameters
2248  !/
2249 #ifdef W3_S
2250  INTEGER, SAVE :: IENT = 0
2251  CALL strace (ient, 'W3SETG')
2252 #endif
2253  !
2254  ! -------------------------------------------------------------------- /
2255  ! 1. Test input and module status
2256  !
2257  IF ( ngrids .EQ. -1 ) THEN
2258  WRITE (ndse,1001)
2259  CALL extcde (1)
2260  END IF
2261  !
2262  IF ( imod.LT.-nauxgr .OR. imod.GT.ngrids ) THEN
2263  WRITE (ndse,1002) imod, -nauxgr, ngrids
2264  CALL extcde (2)
2265  END IF
2266 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3SETG)
2267  WRITE (ndst,9000) imod
2268 #endif
2269  !
2270  ! -------------------------------------------------------------------- /
2271  ! 2. Set model numbers
2272  !
2273  igrid = imod
2274  isgrd = imod
2275  ipars = imod
2276  !
2277  ! -------------------------------------------------------------------- /
2278  ! 3. Set pointers in structure GRID
2279  !
2280  gtype => grids(imod)%GTYPE
2281  rstype => grids(imod)%RSTYPE
2282  iclose => grids(imod)%ICLOSE
2283  !
2284  nx => grids(imod)%NX
2285  ny => grids(imod)%NY
2286  nsea => grids(imod)%NSEA
2287  nseal => grids(imod)%NSEAL
2288  trflag => grids(imod)%TRFLAG
2289  flagll => grids(imod)%FLAGLL
2290  !
2291 #ifdef W3_SMC
2292  ncel => grids(imod)%NCel
2293  nufc => grids(imod)%NUFc
2294  nvfc => grids(imod)%NVFc
2295  nrlv => grids(imod)%NRLv
2296  mrfct => grids(imod)%MRFct
2297  nglo => grids(imod)%NGLO
2298  narc => grids(imod)%NARC
2299  nbgl => grids(imod)%NBGL
2300  nbac => grids(imod)%NBAC
2301  nbsmc => grids(imod)%NBSMC
2302 #endif
2303  !
2304  e3df => grids(imod)%E3DF
2305  p2msf => grids(imod)%P2MSF
2306  us3df => grids(imod)%US3DF
2307  usspf => grids(imod)%USSPF
2308  ussp_wn => grids(imod)%USSP_WN
2309  ffacberg => grids(imod)%FFACBERG
2310 #ifdef W3_REF1
2311  reflc => grids(imod)%REFLC
2312  refld => grids(imod)%REFLD
2313  rref => grids(imod)%RREF
2314  refpars=> grids(imod)%REFPARS
2315 #endif
2316 #ifdef W3_IG1
2317  igpars => grids(imod)%IGPARS
2318 #endif
2319 #ifdef W3_IC2
2320  ic2pars => grids(imod)%IC2PARS
2321 #endif
2322 #ifdef W3_IC3
2323  ic3pars => grids(imod)%IC3PARS
2324 #endif
2325 #ifdef W3_IC4
2326  ic4pars => grids(imod)%IC4PARS
2327  ic4_ki => grids(imod)%IC4_KI
2328  ic4_fc => grids(imod)%IC4_FC
2329  ic4_cn => grids(imod)%IC4_CN
2330  ic4_fmin => grids(imod)%IC4_FMIN
2331  ic4_kibk => grids(imod)%IC4_KIBK
2332 #endif
2333 #ifdef W3_IC5
2334  ic5pars => grids(imod)%IC5PARS
2335 #endif
2336 #ifdef W3_IS2
2337  is2pars => grids(imod)%IS2PARS
2338 #endif
2339  sx => grids(imod)%SX
2340  sy => grids(imod)%SY
2341  x0 => grids(imod)%X0
2342  y0 => grids(imod)%Y0
2343  !
2344  dtcfl => grids(imod)%DTCFL
2345  dtcfli => grids(imod)%DTCFLI
2346  dtmax => grids(imod)%DTMAX
2347  dtmin => grids(imod)%DTMIN
2348  dmin => grids(imod)%DMIN
2349 #ifdef W3_SEC1
2350  nitersec1 => grids(imod)%NITERSEC1
2351 #endif
2352  ctmax => grids(imod)%CTMAX
2353  fice0 => grids(imod)%FICE0
2354  gridshift => grids(imod)%GRIDSHIFT
2355  cmprtrck => grids(imod)%CMPRTRCK
2356 #ifdef W3_RTD
2357  polat => grids(imod)%PoLat
2358  polon => grids(imod)%PoLon
2359  flagunr => grids(imod)%FLAGUNR
2360 #endif
2361  ficen => grids(imod)%FICEN
2362  ficel => grids(imod)%FICEL
2363  iicehmin => grids(imod)%IICEHMIN
2364  iicehdisp => grids(imod)%IICEHDISP
2365  iicefdisp => grids(imod)%IICEFDISP
2366  iiceddisp => grids(imod)%IICEDDISP
2367  iicehfac => grids(imod)%IICEHFAC
2368  iicehinit => grids(imod)%IICEHINIT
2369  icescales => grids(imod)%ICESCALES
2370  pfmove => grids(imod)%PFMOVE
2371  stexu => grids(imod)%STEXU
2372  steyu => grids(imod)%STEYU
2373  stedu => grids(imod)%STEDU
2374  btbeta => grids(imod)%BTBETA
2375  aairgb => grids(imod)%AAIRGB
2376  aaircmin => grids(imod)%AAIRCMIN
2377  !
2378  ginit => grids(imod)%GINIT
2379  guginit => grids(imod)%GUGINIT
2380  fldry => grids(imod)%FLDRY
2381  flcx => grids(imod)%FLCX
2382  flcy => grids(imod)%FLCY
2383  flcth => grids(imod)%FLCTH
2384  flck => grids(imod)%FLCK
2385  flsou => grids(imod)%FLSOU
2386  iicedisp => grids(imod)%IICEDISP
2387  iicesmooth => grids(imod)%IICESMOOTH
2388  !
2389  gname => grids(imod)%GNAME
2390  filext => grids(imod)%FILEXT
2391  trigp => grids(imod)%TRIGP
2392  ntri => grids(imod)%NTRI
2393  countri => grids(imod)%COUNTRI
2394  si => grids(imod)%SI
2395  countot => grids(imod)%COUNTOT
2396  ien => grids(imod)%IEN
2397  len => grids(imod)%LEN
2398  angle => grids(imod)%ANGLE
2399  angle0 => grids(imod)%ANGLE0
2400  ccon => grids(imod)%CCON
2401  countcon => grids(imod)%COUNTCON
2402  index_cell => grids(imod)%INDEX_CELL
2403  ie_cell => grids(imod)%IE_CELL
2404  pos_cell => grids(imod)%POS_CELL
2405  iobp => grids(imod)%IOBP
2406  iaa => grids(imod)%IAA
2407  jaa => grids(imod)%JAA
2408  posi => grids(imod)%POSI
2409  i_diag => grids(imod)%I_DIAG
2410  ja_ie => grids(imod)%JA_IE
2411  nbedge => grids(imod)%NBEDGE
2412  edges => grids(imod)%EDGES
2413  neigh => grids(imod)%NEIGH
2414  nnz => grids(imod)%NNZ
2415  iobpd => grids(imod)%IOBPD
2416  iobdp => grids(imod)%IOBDP
2417  iobpa => grids(imod)%IOBPA
2418  tria => grids(imod)%TRIA
2419  crossdiff => grids(imod)%CROSSDIFF
2420  maxx => grids(imod)%MAXX
2421  maxy => grids(imod)%MAXY
2422  dxymax => grids(imod)%DXYMAX
2423  xgrd => grids(imod)%XGRD
2424  ygrd => grids(imod)%YGRD
2425  zb => grids(imod)%ZB
2426  !
2427  IF ( ginit ) THEN
2428  !
2429  mapsta => grids(imod)%MAPSTA
2430  mapst2 => grids(imod)%MAPST2
2431  mapfs => grids(imod)%MAPFS
2432  mapsf => grids(imod)%MAPSF
2433  flagst => grids(imod)%FLAGST
2434  !
2435 #ifdef W3_RTD
2436  angld => grids(imod)%AnglD
2437 #endif
2438  clats => grids(imod)%CLATS
2439  clatis => grids(imod)%CLATIS
2440  cthg0s => grids(imod)%CTHG0S
2441  trnx => grids(imod)%TRNX
2442  trny => grids(imod)%TRNY
2443  !
2444  dxdp => grids(imod)%DXDP
2445  dxdq => grids(imod)%DXDQ
2446  dydp => grids(imod)%DYDP
2447  dydq => grids(imod)%DYDQ
2448  dpdx => grids(imod)%DPDX
2449  dpdy => grids(imod)%DPDY
2450  dqdx => grids(imod)%DQDX
2451  dqdy => grids(imod)%DQDY
2452  gsqrt => grids(imod)%GSQRT
2453  hpfac => grids(imod)%HPFAC
2454  hqfac => grids(imod)%HQFAC
2455  !
2456 #ifdef W3_BT4
2457  sed_d50 => grids(imod)%SED_D50
2458  sed_psic => grids(imod)%SED_PSIC
2459 #endif
2460  !
2461 #ifdef W3_SMC
2462  nlvcel => grids(imod)%NLvCel
2463  nlvufc => grids(imod)%NLvUFc
2464  nlvvfc => grids(imod)%NLvVFc
2465  ijkcel => grids(imod)%IJKCel
2466  ijkufc => grids(imod)%IJKUFc
2467  ijkvfc => grids(imod)%IJKVFc
2468  ismcbp => grids(imod)%ISMCBP
2469  ctrnx => grids(imod)%CTRNX
2470  ctrny => grids(imod)%CTRNY
2471  clatf => grids(imod)%CLATF
2472 
2473  ijkcel3 => grids(imod)%IJKCel3
2474  ijkcel4 => grids(imod)%IJKCel4
2475  ijkvfc5 => grids(imod)%IJKVFc5
2476  ijkvfc6 => grids(imod)%IJKVFc6
2477  ijkufc5 => grids(imod)%IJKUFc5
2478  ijkufc6 => grids(imod)%IJKUFc6
2479  iclbac => grids(imod)%ICLBAC
2480  angarc => grids(imod)%ANGARC
2481  spcbac => grids(imod)%SPCBAC
2482 #endif
2483  !
2484  gsu => grids(imod)%GSU
2485  !
2486  END IF
2487  !
2488  ! -------------------------------------------------------------------- /
2489  ! 4. Set pointers in structure SGRD
2490  !
2491  nk => sgrds(imod)%NK
2492  nk2 => sgrds(imod)%NK2
2493  nth => sgrds(imod)%NTH
2494  nspec => sgrds(imod)%NSPEC
2495  !
2496  dth => sgrds(imod)%DTH
2497  xfr => sgrds(imod)%XFR
2498  fr1 => sgrds(imod)%FR1
2499  fte => sgrds(imod)%FTE
2500  ftf => sgrds(imod)%FTF
2501  ftwn => sgrds(imod)%FTWN
2502  fttr => sgrds(imod)%FTTR
2503  ftwl => sgrds(imod)%FTWL
2504  facti1 => sgrds(imod)%FACTI1
2505  facti2 => sgrds(imod)%FACTI2
2506  fachfa => sgrds(imod)%FACHFA
2507  fachfe => sgrds(imod)%FACHFE
2508  !
2509  sinit => sgrds(imod)%SINIT
2510  !
2511  IF ( sinit ) THEN
2512  !
2513  mapwn => sgrds(imod)%MAPWN
2514  mapth => sgrds(imod)%MAPTH
2515  !
2516  th => sgrds(imod)%TH
2517  esin => sgrds(imod)%ESIN
2518  ecos => sgrds(imod)%ECOS
2519  es2 => sgrds(imod)%ES2
2520  esc => sgrds(imod)%ESC
2521  ec2 => sgrds(imod)%EC2
2522  sig => sgrds(imod)%SIG
2523  sig2 => sgrds(imod)%SIG2
2524  dsip => sgrds(imod)%DSIP
2525  dsii => sgrds(imod)%DSII
2526  dden => sgrds(imod)%DDEN
2527  dden2 => sgrds(imod)%DDEN2
2528  !
2529  END IF
2530  !
2531  ! -------------------------------------------------------------------- /
2532  ! 5. Set pointers in structure MPAR
2533  !
2534  pinit => mpars(imod)%PINIT
2535  !
2536  ! Structure NPARS
2537  !
2538  facp => mpars(imod)%NPARS%FACP
2539  xrel => mpars(imod)%NPARS%XREL
2540  xflt => mpars(imod)%NPARS%XFLT
2541  fxfm => mpars(imod)%NPARS%FXFM
2542  fxpm => mpars(imod)%NPARS%FXPM
2543  xft => mpars(imod)%NPARS%XFT
2544  xfc => mpars(imod)%NPARS%XFC
2545  facsd => mpars(imod)%NPARS%FACSD
2546  fhmax => mpars(imod)%NPARS%FHMAX
2547 #ifdef W3_RWND
2548  rwindc => mpars(imod)%NPARS%RWINDC
2549 #endif
2550 #ifdef W3_WCOR
2551  wwcor => mpars(imod)%NPARS%WWCOR
2552 #endif
2553  !
2554  ! Structure PROPS
2555  !
2556 #ifdef W3_PR2
2557  dtme => mpars(imod)%PROPS%DTME
2558  clatmn => mpars(imod)%PROPS%CLATMN
2559 #endif
2560 #ifdef W3_PR3
2561  wdcg => mpars(imod)%PROPS%WDCG
2562  wdth => mpars(imod)%PROPS%WDTH
2563 #endif
2564 #ifdef W3_SMC
2565  dtms => mpars(imod)%PROPS%DTMS
2566  refran => mpars(imod)%PROPS%Refran
2567  funo3 => mpars(imod)%PROPS%FUNO3
2568  fverg => mpars(imod)%PROPS%FVERG
2569  fswnd => mpars(imod)%PROPS%FSWND
2570  arctc => mpars(imod)%PROPS%ARCTC
2571 #endif
2572  !
2573  ! Structure FLDP
2574  !
2575 #ifdef W3_FLD1
2576  tail_id => mpars(imod)%FLDPS%TAIL_ID
2577  tail_lev => mpars(imod)%FLDPS%TAIL_LEV
2578  tail_tran1 => mpars(imod)%FLDPS%TAIL_TRAN1
2579  tail_tran2 => mpars(imod)%FLDPS%TAIL_TRAN2
2580 #endif
2581 #ifdef W3_FLD2
2582  tail_id => mpars(imod)%FLDPS%TAIL_ID
2583  tail_lev => mpars(imod)%FLDPS%TAIL_LEV
2584  tail_tran1 => mpars(imod)%FLDPS%TAIL_TRAN1
2585  tail_tran2 => mpars(imod)%FLDPS%TAIL_TRAN2
2586 #endif
2587  !
2588  ! Structure SFLPS
2589  !
2590 #ifdef W3_FLX2
2591  nittin => mpars(imod)%SFLPS%NITTIN
2592  cinxsi => mpars(imod)%SFLPS%CINXSI
2593 #endif
2594 #ifdef W3_FLX3
2595  nittin => mpars(imod)%SFLPS%NITTIN
2596  cap_id => mpars(imod)%SFLPS%CAP_ID
2597  cinxsi => mpars(imod)%SFLPS%CINXSI
2598  cd_max => mpars(imod)%SFLPS%CD_MAX
2599 #endif
2600 #ifdef W3_FLX4
2601  flx4a0 => mpars(imod)%SFLPS%FLX4A0
2602 #endif
2603  !
2604  ! Structure SLNPS
2605  !
2606 #ifdef W3_LN1
2607  slnc1 => mpars(imod)%SLNPS%SLNC1
2608  fspm => mpars(imod)%SLNPS%FSPM
2609  fshf => mpars(imod)%SLNPS%FSHF
2610 #endif
2611  !
2612  ! Structure SRCPS
2613  !
2614  wwnmeanptail=> mpars(imod)%SRCPS%WWNMEANPTAIL
2615  sstxftftail => mpars(imod)%SRCPS%SSTXFTFTAIL
2616 #ifdef W3_ST1
2617  sinc1 => mpars(imod)%SRCPS%SINC1
2618  sdsc1 => mpars(imod)%SRCPS%SDSC1
2619 #endif
2620 #ifdef W3_ST2
2621  zwind => mpars(imod)%SRCPS%ZWIND
2622  fswell => mpars(imod)%SRCPS%FSWELL
2623  shstab => mpars(imod)%SRCPS%SHSTAB
2624  ofstab => mpars(imod)%SRCPS%OFSTAB
2625  ccng => mpars(imod)%SRCPS%CCNG
2626  ccps => mpars(imod)%SRCPS%CCPS
2627  ffng => mpars(imod)%SRCPS%FFNG
2628  ffps => mpars(imod)%SRCPS%FFPS
2629  cdsa0 => mpars(imod)%SRCPS%CDSA0
2630  cdsa1 => mpars(imod)%SRCPS%CDSA1
2631  cdsa2 => mpars(imod)%SRCPS%CDSA2
2632  sdsaln => mpars(imod)%SRCPS%SDSALN
2633  cdsb0 => mpars(imod)%SRCPS%CDSB0
2634  cdsb1 => mpars(imod)%SRCPS%CDSB1
2635  cdsb2 => mpars(imod)%SRCPS%CDSB2
2636  cdsb3 => mpars(imod)%SRCPS%CDSB3
2637  fpimin => mpars(imod)%SRCPS%FPIMIN
2638  xfh => mpars(imod)%SRCPS%XFH
2639  xf1 => mpars(imod)%SRCPS%XF1
2640  xf2 => mpars(imod)%SRCPS%XF2
2641 #endif
2642  !
2643 #ifdef W3_ST3
2644  zzwnd => mpars(imod)%SRCPS%ZZWND
2645  aalpha => mpars(imod)%SRCPS%AALPHA
2646  bbeta => mpars(imod)%SRCPS%BBETA
2647  ssinthp => mpars(imod)%SRCPS%SSINTHP
2648  zz0max => mpars(imod)%SRCPS%ZZ0MAX
2649  zz0rat => mpars(imod)%SRCPS%ZZ0RAT
2650  zzalp => mpars(imod)%SRCPS%ZZALP
2651  ttauwshelter => mpars(imod)%SRCPS%TTAUWSHELTER
2652  sswellf => mpars(imod)%SRCPS%SSWELLF
2653  ssdsc1 => mpars(imod)%SRCPS%SSDSC1
2654  wwnmeanp => mpars(imod)%SRCPS%WWNMEANP
2655  ffxfm => mpars(imod)%SRCPS%FFXFM
2656  ffxpm => mpars(imod)%SRCPS%FFXPM
2657  ddelta1 => mpars(imod)%SRCPS%DDELTA1
2658  ddelta2 => mpars(imod)%SRCPS%DDELTA2
2659  sstxftf => mpars(imod)%SRCPS%SSTXFTF
2660  sstxftwn => mpars(imod)%SRCPS%SSTXFTWN
2661 #endif
2662  !
2663 #ifdef W3_ST4
2664  zzwnd => mpars(imod)%SRCPS%ZZWND
2665  aalpha => mpars(imod)%SRCPS%AALPHA
2666  bbeta => mpars(imod)%SRCPS%BBETA
2667  ssinthp => mpars(imod)%SRCPS%SSINTHP
2668  zz0max => mpars(imod)%SRCPS%ZZ0MAX
2669  zz0rat => mpars(imod)%SRCPS%ZZ0RAT
2670  zzalp => mpars(imod)%SRCPS%ZZALP
2671  ttauwshelter => mpars(imod)%SRCPS%TTAUWSHELTER
2672  sintailpar => mpars(imod)%SRCPS%SINTAILPAR
2673  capchnk => mpars(imod)%SRCPS%CAPCHNK
2674  sswellfpar => mpars(imod)%SRCPS%SSWELLFPAR
2675  sswellf => mpars(imod)%SRCPS%SSWELLF
2676  ssdsc => mpars(imod)%SRCPS%SSDSC
2677  ssdsbr => mpars(imod)%SRCPS%SSDSBR
2678  ssdsbt => mpars(imod)%SRCPS%SSDSBT
2679  ssdsbrf1 => mpars(imod)%SRCPS%SSDSBRF1
2680  ssdsbrf2 => mpars(imod)%SRCPS%SSDSBRF2
2681  ssdsbrfdf => mpars(imod)%SRCPS%SSDSBRFDF
2682  ssdsbm => mpars(imod)%SRCPS%SSDSBM
2683  ssdsbck => mpars(imod)%SRCPS%SSDSBCK
2684  ssdsabk => mpars(imod)%SRCPS%SSDSABK
2685  ssdspbk => mpars(imod)%SRCPS%SSDSPBK
2686  ssdshck => mpars(imod)%SRCPS%SSDSHCK
2687  ssdsbint => mpars(imod)%SRCPS%SSDSBINT
2688  ssdsp => mpars(imod)%SRCPS%SSDSP
2689  wwnmeanp => mpars(imod)%SRCPS%WWNMEANP
2690  ffxfm => mpars(imod)%SRCPS%FFXFM
2691  ffxfa => mpars(imod)%SRCPS%FFXFA
2692  ffxpm => mpars(imod)%SRCPS%FFXPM
2693  ssdsdth => mpars(imod)%SRCPS%SSDSDTH
2694  sstxftf => mpars(imod)%SRCPS%SSTXFTF
2695  sstxftwn => mpars(imod)%SRCPS%SSTXFTWN
2696  ssdscos => mpars(imod)%SRCPS%SSDSCOS
2697  ssdsiso => mpars(imod)%SRCPS%SSDSISO
2698  iktab => mpars(imod)%SRCPS%IKTAB
2699  dcki => mpars(imod)%SRCPS%DCKI
2700  qbi => mpars(imod)%SRCPS%QBI
2701  cumulw => mpars(imod)%SRCPS%CUMULW
2702  satindices => mpars(imod)%SRCPS%SATINDICES
2703  satweights => mpars(imod)%SRCPS%SATWEIGHTS
2704  ssinbr => mpars(imod)%SRCPS%SSINBR
2705 #endif
2706  !
2707 #ifdef W3_ST6
2708  sin6a0 => mpars(imod)%SRCPS%SIN6A0
2709  sin6ws => mpars(imod)%SRCPS%SIN6WS
2710  sin6fc => mpars(imod)%SRCPS%SIN6FC
2711  sds6et => mpars(imod)%SRCPS%SDS6ET
2712  sds6a1 => mpars(imod)%SRCPS%SDS6A1
2713  sds6p1 => mpars(imod)%SRCPS%SDS6P1
2714  sds6a2 => mpars(imod)%SRCPS%SDS6A2
2715  sds6p2 => mpars(imod)%SRCPS%SDS6P2
2716  swl6s6 => mpars(imod)%SRCPS%SWL6S6
2717  swl6b1 => mpars(imod)%SRCPS%SWL6B1
2718  swl6cstb1 => mpars(imod)%SRCPS%SWL6CSTB1
2719 #endif
2720  !
2721  ! Structure SRNLS
2722  !
2723 #ifdef W3_NL1
2724  snlc1 => mpars(imod)%SNLPS%SNLC1
2725  lam => mpars(imod)%SNLPS%LAM
2726  kdcon => mpars(imod)%SNLPS%KDCON
2727  kdmn => mpars(imod)%SNLPS%KDMN
2728  snls1 => mpars(imod)%SNLPS%SNLS1
2729  snls2 => mpars(imod)%SNLPS%SNLS2
2730  snls3 => mpars(imod)%SNLPS%SNLS3
2731  iqtpe => mpars(imod)%SNLPS%IQTPE
2732  gqnf1 => mpars(imod)%SNLPS%GQNF1
2733  gqnt1 => mpars(imod)%SNLPS%GQNT1
2734  gqnq_om2 => mpars(imod)%SNLPS%GQNQ_OM2
2735  nltail => mpars(imod)%SNLPS%NLTAIL
2736  gqthrsat => mpars(imod)%SNLPS%GQTHRSAT
2737  gqthrcou=> mpars(imod)%SNLPS%GQTHRCOU
2738  gqamp=> mpars(imod)%SNLPS%GQAMP
2739 #endif
2740 #ifdef W3_NL2
2741  iqtpe => mpars(imod)%SNLPS%IQTPE
2742  ndpths => mpars(imod)%SNLPS%NDPTHS
2743  nltail => mpars(imod)%SNLPS%NLTAIL
2744  IF ( ndpths .NE. 0 ) dpthnl => mpars(imod)%SNLPS%DPTHNL
2745 #endif
2746 #ifdef W3_NL3
2747  nfrmin => mpars(imod)%SNLPS%NFRMIN
2748  nfrmax => mpars(imod)%SNLPS%NFRMAX
2749  nfrcut => mpars(imod)%SNLPS%NFRCUT
2750  nthmax => mpars(imod)%SNLPS%NTHMAX
2751  nthexp => mpars(imod)%SNLPS%NTHEXP
2752  nspmin => mpars(imod)%SNLPS%NSPMIN
2753  nspmax => mpars(imod)%SNLPS%NSPMAX
2754  nspmx2 => mpars(imod)%SNLPS%NSPMX2
2755  frq => mpars(imod)%SNLPS%FRQ
2756  xsi => mpars(imod)%SNLPS%XSI
2757  nqa => mpars(imod)%SNLPS%NQA
2758  qst1 => mpars(imod)%SNLPS%QST1
2759  qst2 => mpars(imod)%SNLPS%QST2
2760  qst3 => mpars(imod)%SNLPS%QST3
2761  qst4 => mpars(imod)%SNLPS%QST4
2762  qst5 => mpars(imod)%SNLPS%QST5
2763  qst6 => mpars(imod)%SNLPS%QST6
2764  snlnq => mpars(imod)%SNLPS%SNLNQ
2765  snlmsc => mpars(imod)%SNLPS%SNLMSC
2766  snlnsc => mpars(imod)%SNLPS%SNLNSC
2767  snlsfd => mpars(imod)%SNLPS%SNLSFD
2768  snlsfs => mpars(imod)%SNLPS%SNLSFS
2769  snll => mpars(imod)%SNLPS%SNLL
2770  snlm => mpars(imod)%SNLPS%SNLM
2771  snlt => mpars(imod)%SNLPS%SNLT
2772  snlcd => mpars(imod)%SNLPS%SNLCD
2773  snlcs => mpars(imod)%SNLPS%SNLCS
2774 #endif
2775 #ifdef W3_NL4
2776  itsa => mpars(imod)%SNLPS%ITSA
2777  ialt => mpars(imod)%SNLPS%IALT
2778 #endif
2779 #ifdef W3_NL5
2780  qr5dpt => mpars(imod)%SNLPS%QR5DPT
2781  qr5oml => mpars(imod)%SNLPS%QR5OML
2782  qi5dis => mpars(imod)%SNLPS%QI5DIS
2783  qi5kev => mpars(imod)%SNLPS%QI5KEV
2784  qi5nnz => mpars(imod)%SNLPS%QI5NNZ
2785  qi5ipl => mpars(imod)%SNLPS%QI5IPL
2786  qi5pmx => mpars(imod)%SNLPS%QI5PMX
2787 #endif
2788 #ifdef W3_NLS
2789  nthx => mpars(imod)%SNLPS%NTHX
2790  nfrx => mpars(imod)%SNLPS%NFRX
2791  nspl => mpars(imod)%SNLPS%NSPL
2792  nsph => mpars(imod)%SNLPS%NSPH
2793  snsst => mpars(imod)%SNLPS%SNSST
2794  cnlsa => mpars(imod)%SNLPS%CNLSA
2795  cnlsc => mpars(imod)%SNLPS%CNLSC
2796  cnlsfm => mpars(imod)%SNLPS%CNLSFM
2797  cnlsc1 => mpars(imod)%SNLPS%CNLSC1
2798  cnlsc2 => mpars(imod)%SNLPS%CNLSC2
2799  cnlsc3 => mpars(imod)%SNLPS%CNLSC3
2800 #endif
2801  !
2802  ! Structure SBTPS
2803  !
2804 #ifdef W3_BT1
2805  sbtc1 => mpars(imod)%SBTPS%SBTC1
2806 #endif
2807 #ifdef W3_BT4
2808  sbtcx => mpars(imod)%SBTPS%SBTCX
2809 #endif
2810  !
2811  ! Structure SDBPS
2812  !
2813 #ifdef W3_DB1
2814  sdbc1 => mpars(imod)%SDBPS%SDBC1
2815  sdbc2 => mpars(imod)%SDBPS%SDBC2
2816  fdonly => mpars(imod)%SDBPS%FDONLY
2817  sdbsc => mpars(imod)%SDBPS%SDBSC
2818 #endif
2819  !
2820  !
2821 #ifdef W3_UOST
2822  uostfilelocal => mpars(imod)%UOSTPS%UOSTFILELOCAL
2823  uostfileshadow => mpars(imod)%UOSTPS%UOSTFILESHADOW
2824  uostfactorlocal => mpars(imod)%UOSTPS%UOSTFACTORLOCAL
2825  uostfactorshadow => mpars(imod)%UOSTPS%UOSTFACTORSHADOW
2826 #endif
2827  !
2828  ! Structure SICPS
2829  !
2830 #ifdef W3_IS1
2831  is1c1 => mpars(imod)%SICPS%IS1C1
2832  is1c2 => mpars(imod)%SICPS%IS1C2
2833 #endif
2834  !
2835  ! Structure SCHM
2836  fsbccfl => mpars(imod)%SCHMS%FSBCCFL
2837  fsn => mpars(imod)%SCHMS%FSN
2838  fspsi => mpars(imod)%SCHMS%FSPSI
2839  fsfct => mpars(imod)%SCHMS%FSFCT
2840  fsnimp => mpars(imod)%SCHMS%FSNIMP
2841  fstotalimp => mpars(imod)%SCHMS%FSTOTALIMP
2842  fstotalexp => mpars(imod)%SCHMS%FSTOTALEXP
2843  fsrefraction => mpars(imod)%SCHMS%FSREFRACTION
2844  fsfreqshift => mpars(imod)%SCHMS%FSFREQSHIFT
2845  fssource => mpars(imod)%SCHMS%FSSOURCE
2846  do_change_wlv => mpars(imod)%SCHMS%DO_CHANGE_WLV
2847  solverthr_stp => mpars(imod)%SCHMS%SOLVERTHR_STP
2848  crit_dep_stp => mpars(imod)%SCHMS%CRIT_DEP_STP
2849  b_jgs_terminate_maxiter => mpars(imod)%SCHMS%B_JGS_TERMINATE_MAXITER
2850  b_jgs_terminate_difference => mpars(imod)%SCHMS%B_JGS_TERMINATE_DIFFERENCE
2851  b_jgs_terminate_norm => mpars(imod)%SCHMS%B_JGS_TERMINATE_NORM
2852  b_jgs_limiter => mpars(imod)%SCHMS%B_JGS_LIMITER
2853  b_jgs_use_jacobi => mpars(imod)%SCHMS%B_JGS_USE_JACOBI
2854  b_jgs_block_gauss_seidel => mpars(imod)%SCHMS%B_JGS_BLOCK_GAUSS_SEIDEL
2855  b_jgs_maxiter => mpars(imod)%SCHMS%B_JGS_MAXITER
2856  b_jgs_limiter_func => mpars(imod)%SCHMS%B_JGS_LIMITER_FUNC
2857  b_jgs_pmin => mpars(imod)%SCHMS%B_JGS_PMIN
2858  b_jgs_diff_thr => mpars(imod)%SCHMS%B_JGS_DIFF_THR
2859  b_jgs_norm_thr => mpars(imod)%SCHMS%B_JGS_NORM_THR
2860  b_jgs_nlevel => mpars(imod)%SCHMS%B_JGS_NLEVEL
2861  b_jgs_source_nonlinear => mpars(imod)%SCHMS%B_JGS_SOURCE_NONLINEAR
2862  RETURN
2863  !
2864  ! Formats
2865  !
2866 1001 FORMAT (/' *** ERROR W3SETG : GRIDS NOT INITIALIZED *** '/ &
2867  ' RUN W3NMOD FIRST '/)
2868 1002 FORMAT (/' *** ERROR W3SETG : ILLEGAL MODEL NUMBER *** '/ &
2869  ' IMOD = ',i10/ &
2870  ' NAUXGR = ',i10/ &
2871  ' NGRIDS = ',i10/)
2872 #if defined(TEST_W3GDATMD) || defined(TEST_W3GDATMD_W3SETG)
2873 9000 FORMAT (' TEST W3SETG : GRID/MODEL ',i4,' SELECTED')
2874 #endif
2875  !/
2876  !/ End of W3SETG ----------------------------------------------------- /
2877  !/

References aaircmin, aairgb, aalpha, angarc, angld, angle, angle0, arctc, b_jgs_block_gauss_seidel, b_jgs_diff_thr, b_jgs_limiter, b_jgs_limiter_func, b_jgs_maxiter, b_jgs_nlevel, b_jgs_norm_thr, b_jgs_pmin, b_jgs_source_nonlinear, b_jgs_terminate_difference, b_jgs_terminate_maxiter, b_jgs_terminate_norm, b_jgs_use_jacobi, bbeta, btbeta, cap_id, capchnk, ccng, ccon, ccps, cd_max, cdsa0, cdsa1, cdsa2, cdsb0, cdsb1, cdsb2, cdsb3, cinxsi, clatf, clatis, clatmn, clats, cmprtrck, cnlsa, cnlsc, cnlsc1, cnlsc2, cnlsc3, cnlsfm, countcon, countot, countri, crit_dep_stp, crossdiff, cthg0s, ctmax, ctrnx, ctrny, cumulw, dcki, ddelta1, ddelta2, dden, dden2, dmin, do_change_wlv, dpdx, dpdy, dpthnl, dqdx, dqdy, dsii, dsip, dtcfl, dtcfli, dth, dtmax, dtme, dtmin, dtms, dxdp, dxdq, dxymax, dydp, dydq, e3df, ec2, ecos, edges, es2, esc, esin, fachfa, fachfe, facp, facsd, facti1, facti2, fdonly, ffacberg, ffng, ffps, ffxfa, ffxfm, ffxpm, fhmax, fice0, ficel, ficen, filext, flagll, flagst, flagunr, flck, flcth, flcx, flcy, fldry, flsou, flx4a0, fpimin, fr1, frq, fsbccfl, fsfct, fsfreqshift, fshf, fsn, fsnimp, fspm, fspsi, fsrefraction, fssource, fstotalexp, fstotalimp, fswell, fswnd, fte, ftf, fttr, ftwl, ftwn, funo3, fverg, fxfm, fxpm, ginit, gname, gqamp, gqnf1, gqnq_om2, gqnt1, gqthrcou, gqthrsat, grids, gridshift, gsqrt, gsu, gtype, guginit, hpfac, hqfac, i_diag, iaa, ialt, ic2pars, ic3pars, ic4_cn, ic4_fc, ic4_fmin, ic4_ki, ic4_kibk, ic4pars, ic5pars, icescales, iclbac, iclose, ie_cell, ien, igpars, igrid, iiceddisp, iicedisp, iicefdisp, iicehdisp, iicehfac, iicehinit, iicehmin, iicesmooth, ijkcel, ijkcel3, ijkcel4, ijkufc, ijkufc5, ijkufc6, ijkvfc, ijkvfc5, ijkvfc6, iktab, index_cell, iobdp, iobp, iobpa, iobpd, ipars, iqtpe, is1c1, is1c2, is2pars, isgrd, ismcbp, itsa, ja_ie, jaa, kdcon, kdmn, lam, len, mapfs, mapsf, mapst2, mapsta, mapth, mapwn, maxx, maxy, mpars, mrfct, narc, nauxgr, nbac, nbedge, nbgl, nbsmc, ncel, ndpths, neigh, nfrcut, nfrmax, nfrmin, nfrx, nglo, ngrids, nitersec1, nittin, nk, nk2, nltail, nlvcel, nlvufc, nlvvfc, nnz, nqa, nrlv, nsea, nseal, nspec, nsph, nspl, nspmax, nspmin, nspmx2, nth, nthexp, nthmax, nthx, ntri, nufc, nvfc, nx, ny, ofstab, p2msf, pfmove, pinit, polat, polon, pos_cell, posi, qbi, qi5dis, qi5ipl, qi5kev, qi5nnz, qi5pmx, qr5dpt, qr5oml, qst1, qst2, qst3, qst4, qst5, qst6, reflc, refld, refpars, refran, rref, rstype, rwindc, satindices, satweights, sbtc1, sbtcx, sdbc1, sdbc2, sdbsc, sds6a1, sds6a2, sds6et, sds6p1, sds6p2, sdsaln, sdsc1, sed_d50, sed_psic, sgrds, shstab, si, sig, sig2, sin6a0, sin6fc, sin6ws, sinc1, sinit, sintailpar, slnc1, snlc1, snlcd, snlcs, snll, snlm, snlmsc, snlnq, snlnsc, snls1, snls2, snls3, snlsfd, snlsfs, snlt, snsst, solverthr_stp, spcbac, ssdsabk, ssdsbck, ssdsbint, ssdsbm, ssdsbr, ssdsbrf1, ssdsbrf2, ssdsbrfdf, ssdsbt, ssdsc, ssdsc1, ssdscos, ssdsdth, ssdshck, ssdsiso, ssdsp, ssdspbk, ssinbr, ssinthp, sstxftf, sstxftftail, sstxftwn, sswellf, sswellfpar, stedu, stexu, steyu, w3servmd::strace(), swl6b1, swl6cstb1, swl6s6, sx, sy, tail_id, tail_lev, tail_tran1, tail_tran2, th, trflag, tria, trigp, trnx, trny, ttauwshelter, uostfactorlocal, uostfactorshadow, uostfilelocal, uostfileshadow, us3df, ussp_wn, usspf, wdcg, wdth, wwcor, wwnmeanp, wwnmeanptail, x0, xf1, xf2, xfc, xfh, xflt, xfr, xft, xgrd, xrel, xsi, y0, ygrd, zb, zwind, zz0max, zz0rat, zzalp, and zzwnd.

Referenced by wmesmfmd::createexpmesh(), gxoutf(), gxoutp(), w3bounc(), w3bound(), w3adatmd::w3dima(), w3idatmd::w3dimi(), w3dims(), w3dimug(), w3wdatmd::w3dimw(), w3dimx(), w3odatmd::w3dmo2(), w3odatmd::w3dmo3(), w3odatmd::w3dmo5(), w3gntx(), w3grib(), w3gridmd::w3grid(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iogomd::w3iogo(), w3iogrmd::w3iogr(), w3iopomd::w3iopo(), w3iopomd::w3iopon(), w3iorsmd::w3iors(), w3iotrmd::w3iotr(), w3ounf(), w3ounp(), w3outf(), w3outp(), w3prep(), w3prnc(), w3prtide(), w3sbs1(), w3shel(), w3strt(), w3trck(), w3trnc(), w3uprstr(), w3wavemd::w3wave(), w3adatmd::w3xdma(), wmmdatmd::wmdimd(), wmmdatmd::wmdimm(), wmgridmd::wmgeql(), wmgridmd::wmghgh(), wmgridmd::wmglow(), wminitmd::wminit(), wminitmd::wminitnml(), wminiomd::wmiobg(), wminiomd::wmiobs(), wminiomd::wmioeg(), wminiomd::wmioes(), wminiomd::wmiohg(), wminiomd::wmiohs(), wmiopomd::wmiopo(), wmiopomd::wmiopp(), wmgridmd::wmsmceql(), wmupdtmd::wmupdt(), and wmwavemd::wmwave().

◆ w3setref()

subroutine w3gdatmd::w3setref

Definition at line 3294 of file w3gdatmd.F90.

3294  !/
3295  !/ +-----------------------------------+
3296  !/ | WAVEWATCH III NOAA/NCEP |
3297  !/ | F. Ardhuin |
3298  !/ | FORTRAN 90 |
3299  !/ | Last update : 13-Nov-2013 |
3300  !/ +-----------------------------------+
3301  !/
3302  !/ 13-Nov-2013 : Origination. ( version 4.13 )
3303  !/
3304  ! 1. Purpose :
3305  !
3306  ! Update reflection directions at shoreline.
3307  !
3308  ! 2. Method :
3309  !
3310  !
3311  ! 3. Parameters :
3312  !
3313  ! Parameter list
3314  ! ----------------------------------------------------------------
3315  ! None
3316  ! ----------------------------------------------------------------
3317  !
3318  ! 4. Subroutines used :
3319  !
3320  ! See module documentation.
3321  !
3322  ! 5. Called by :
3323  !
3324  ! Name Type Module Description
3325  ! ----------------------------------------------------------------
3326  ! WW3_GRID Prog. WW3_GRID Grid preprocessor
3327  ! W3ULEV Subr. W3UPDTMD Water level update
3328  ! ----------------------------------------------------------------
3329  !
3330  ! 6. Error messages :
3331  !
3332  ! None.
3333  !
3334  ! 7. Remarks :
3335  !
3336  ! 8. Structure :
3337  !
3338  ! See source code.
3339  !
3340  ! 9. Switches :
3341  !
3342  ! !/S Enable subroutine tracing.
3343  !
3344  ! 10. Source code :
3345  !
3346  !/ ------------------------------------------------------------------- /
3347  USE constants
3348 #ifdef W3_S
3349  USE w3servmd, ONLY : strace
3350 #endif
3351  !
3352  IMPLICIT NONE
3353  !/
3354  !/ ------------------------------------------------------------------- /
3355  !/
3356  INTEGER :: ISEA, IX, IY, IXY, IXN, IXP, IYN, IYP
3357  INTEGER :: J, K, NEIGH1(0:7)
3358  INTEGER :: ILEV, NLEV
3359 #ifdef W3_S
3360  INTEGER, SAVE :: IENT = 0
3361 #endif
3362 
3363  REAL :: TRIX(NY*NX), TRIY(NY*NX), DX, DY, &
3364  COSAVG, SINAVG, THAVG, ANGLES(0:7), CLAT
3365  !/
3366  !/ ------------------------------------------------------------------- /
3367  !/
3368 #ifdef W3_S
3369  CALL strace (ient, 'W3SETREF')
3370 #endif
3371  !
3372  ! 1. Preparations --------------------------------------------------- *
3373  !
3374 #ifdef W3_REF1
3375  IF (refpars(2).GT.0) rref(2)=.true.
3376  IF (refpars(3).GT.0) rref(3)=.true.
3377  IF (refpars(4).GT.0) rref(4)=.true.
3378  !
3379  DO iy=2, ny-1
3380  DO ix=2, nx-1
3381  IF (refpars(1).GT.0) rref(1)=.true.
3382  !No reflection from artificial island on pole.
3383  IF (flagll.AND.(ygrd(iy,ix).GT.85)) rref(1)=.false.
3384  IF (mapsta(iy,ix).GT.0) THEN
3385  !
3386  ! Prepares for reflection from subgrid islands
3387  !
3388  IF (rref(2)) &
3389  reflc(2,mapfs(iy,ix))= max((1. - trnx(iy,ix)),(1.-trny(iy,ix)))
3390  !
3391  ! Prepares for iceberg reflections
3392  !
3393  IF (rref(4)) &
3394  reflc(4,mapfs(iy,ix))= 1.
3395  !
3396  ! resolved shoreline reflection
3397  !
3398  IF (rref(1)) THEN
3399  reflc(1, mapfs(iy,ix)) = 0.
3400  refld(1:6,mapfs(iy,ix)) = 0
3401  !
3402  ! Search for neighboring coastline. 3 2 1
3403  ! around X. These are the neighbors of X: 4 X 0
3404  ! 5 6 7
3405  !
3406  !
3407  neigh1(0)=8*mapst2(iy,ix+1)+mapsta(iy,ix+1)
3408  neigh1(1:3)=8*mapst2(iy+1,ix+1:ix-1:-1)+mapsta(iy+1,ix+1:ix-1:-1)
3409  neigh1(4)=8*mapst2(iy,ix-1)+mapsta(iy,ix-1)
3410  neigh1(5:7)=8*mapst2(iy-1,ix-1:ix+1)+mapsta(iy-1,ix-1:ix+1)
3411  !
3412  ! if one of the surrounding points is land: determines directions ...
3413  !
3414  IF (minval(abs(neigh1)).EQ.0) THEN
3415  IF ( flagll ) THEN
3416  clat = cos(ygrd(iy,ix)*dera)
3417  ELSE
3418  clat = 1.
3419  END IF
3420  angles(0)= atan2(dydp(iy,ix),dxdp(iy,ix)*clat)
3421  angles(1)= atan2(dydp(iy,ix)+dydq(iy,ix),(dxdp(iy,ix)+dxdq(iy,ix))*clat)
3422  angles(2)= atan2(dydq(iy,ix),dxdq(iy,ix)*clat)
3423  angles(3)= atan2(dydq(iy,ix)-dydp(iy,ix),(dxdq(iy,ix)-dxdp(iy,ix))*clat)
3424  angles(4:7)= angles(0:3)+pi
3425  IF ((neigh1(0).GE.1).AND.(neigh1(4).GE.1)) THEN
3426  refld(3,mapfs(iy,ix))=0
3427  ELSE
3428  IF ((neigh1(0).GE.1).OR.(neigh1(4).GE.1)) refld(3,mapfs(iy,ix))=1
3429  END IF
3430  IF ((neigh1(2).EQ.1).AND.(neigh1(6).GE.1)) THEN
3431  refld(4,mapfs(iy,ix))=0
3432  ELSE
3433  IF ((neigh1(2).GE.1).OR.(neigh1(6).GE.1)) refld(4,mapfs(iy,ix))=1
3434  END IF
3435  !
3436  ! Looks for a locally straight coast in all 8 orientations
3437  !
3438  j=0
3439  refld(1,mapfs(iy,ix))=0
3440  cosavg=0
3441  sinavg=0
3442  ! Shore angle is corrected for grid rotation in w3ref1md.ftn with REFLD(5:6,MAPFS(IY,IX))
3443  refld(5,mapfs(iy,ix))= mod(nth+nint(angles(0)/tpi*nth),nth)
3444  refld(6,mapfs(iy,ix))= mod(nth+nint((angles(2)/tpi-0.25)*nth),nth)
3445 #endif
3446 #ifdef W3_REFT
3447  IF (iy.EQ.4) THEN
3448  WRITE(6,*) 'POINT (IX,IY):',ix,iy
3449  WRITE(6,*) 'REFT:',neigh1(3),neigh1(2), neigh1(1)
3450  WRITE(6,*) 'REFT:',neigh1(4),1, neigh1(0)
3451  WRITE(6,*) 'REFT:',neigh1(5:7)
3452  WRITE(6,*) 'ANG:',angles(3)*rade,angles(2)*rade, angles(1)*rade
3453  WRITE(6,*) 'ANG:',angles(4)*rade,1, angles(0) *rade
3454  WRITE(6,*) 'ANG:',angles(5:7)*rade
3455  WRITE(6,*) 'REFT:',xgrd(iy+1,ix-1:ix+1), ygrd(iy+1,ix-1:ix+1)
3456  WRITE(6,*) 'REFT:',xgrd(iy,ix-1:ix+1) , ygrd(iy,ix-1:ix+1)
3457  WRITE(6,*) 'REFT:',xgrd(iy-1,ix-1:ix+1), ygrd(iy-1,ix-1:ix+1)
3458  WRITE(6,*) 'REFLD:',refld(3:6,mapfs(iy,ix))
3459  ENDIF
3460 #endif
3461 #ifdef W3_REF1
3462  DO k=0,7
3463  IF (neigh1(k).EQ.0.AND.neigh1(mod(k+7,8)).EQ.0 &
3464  .AND.neigh1(mod(k+1,8)).EQ.0 &
3465  .AND.neigh1(mod(k+4,8)).NE.0) THEN
3466  reflc(1,mapfs(iy,ix))= refpars(1)
3467  !
3468  ! Defines direction index for specular reflection (normal to coast)
3469  !
3470  ! for example, if we have this layout 1 1 0
3471  ! (NB: 1 is sea, 0 is land) 1 X 0
3472  ! 1 1 0
3473  !
3474  ! then there is only a coastline detection for K=0, giving J=1
3475  ! and the final result will be REFLD(1,MAPFS(IY,IX))=1
3476  ! Namely, the direction TH(REFLD) is the direction pointing INTO the coast
3477  !
3478  refld(2,mapfs(iy,ix))= 2
3479  cosavg=cosavg+cos(angles(k)) !ECOS(1+(K*NTH)/8)
3480  sinavg=sinavg+sin(angles(k)) !ESIN(1+(K*NTH)/8)
3481  j=j+1
3482  ENDIF
3483  END DO
3484  IF (j.GT.0) THEN
3485  IF (j.GT.1) refld(2,mapfs(iy,ix))= 1
3486  thavg=atan2(sinavg,cosavg)
3487  refld(1,mapfs(iy,ix))=1+mod(nth+nint(thavg/tpi*nth),nth)
3488  ELSE
3489 
3490  ! 1 1 1
3491  ! Looks for mild corners like 1 1 1
3492  ! 1 0 0
3493  DO k=0,7
3494  IF (neigh1(k).EQ.0.AND.neigh1(mod(k+1,8)).EQ.0 &
3495  .AND.neigh1(mod(k+4,8)).NE.0) THEN
3496  reflc(1,mapfs(iy,ix))= refpars(1)
3497  refld(1,mapfs(iy,ix))= 1+mod((k*nth+(k+1)*nth)/16,nth)
3498  refld(2,mapfs(iy,ix))= 1
3499  ENDIF
3500  END DO
3501  ! 1 1 1 1 1 1
3502  ! Looks for sharp corners like 1 1 1 but not diagonals like 1 1 1
3503  ! 1 0 1 1 1 0
3504  IF (reflc(1,mapfs(iy,ix)).LE.0) THEN
3505  DO k=0,7,2
3506  IF ( neigh1(k).EQ.0.AND.neigh1(mod(k+4,8)).NE.0) THEN
3507  reflc(1,mapfs(iy,ix))= refpars(1)
3508  refld(1,mapfs(iy,ix))= 1+(k*nth)/8
3509  refld(2,mapfs(iy,ix))= 0
3510  !WRITE(6,*) 'NEIGH3:',IX,IY,K,NEIGH1,K*(NTH/8)
3511  END IF
3512  END DO
3513  END IF
3514  END IF
3515  ! End of test if surrounding point is land
3516  END IF
3517 #endif
3518 #ifdef W3_REFT
3519  IF (reflc(1,mapfs(iy,ix)).GT.0) THEN
3520  WRITE (6,*) 'COAST DIRECTION AT POINT:',ix,iy,' IS ', &
3521  refld(:,mapfs(iy,ix)),th(refld(1,mapfs(iy,ix)))*360/tpi
3522  ENDIF
3523 #endif
3524 #ifdef W3_REF1
3525  ! End of test if local point is sea
3526  END IF
3527  END IF
3528  END DO
3529  END DO
3530 #endif
3531  !
3532  RETURN
3533  !
3534  ! Formats
3535  !
3536  !/
3537  !/ End of W3SETREF ----------------------------------------------------- /
3538  !/

References constants::dera, dxdp, dxdq, dydp, dydq, flagll, mapfs, mapst2, mapsta, nth, constants::pi, constants::rade, reflc, refld, refpars, rref, w3servmd::strace(), th, constants::tpi, trnx, trny, xgrd, and ygrd.

Referenced by w3iorsmd::w3iors(), and w3updtmd::w3ulev().

Variable Documentation

◆ aaircmin

real, pointer w3gdatmd::aaircmin

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3src4md::w3sds4(), w3setg(), and w3src4md::w3spr4().

◆ aairgb

real, pointer w3gdatmd::aairgb

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3src4md::w3sds4(), w3setg(), and w3src4md::w3spr4().

◆ aalpha

◆ angarc

real, dimension(:), pointer w3gdatmd::angarc

◆ angld

real, dimension(:), pointer w3gdatmd::angld

Definition at line 1192 of file w3gdatmd.F90.

1192  REAL, POINTER :: AnglD(:)

Referenced by w3exnc(), w3iobcmd::w3iobc(), w3iopomd::w3iope(), w3setg(), and w3updtmd::w3ubpt().

◆ angle

real, dimension(:,:), pointer w3gdatmd::angle

Definition at line 1123 of file w3gdatmd.F90.

1123  REAL, POINTER :: ANGLE(:,:),ANGLE0(:,:)

Referenced by w3triamd::ug_gradients(), and w3setg().

◆ angle0

real, dimension(:,:), pointer w3gdatmd::angle0

Definition at line 1123 of file w3gdatmd.F90.

Referenced by w3setg().

◆ arctc

◆ b_jgs_block_gauss_seidel

logical, pointer w3gdatmd::b_jgs_block_gauss_seidel

◆ b_jgs_diff_thr

real(8), pointer w3gdatmd::b_jgs_diff_thr

Definition at line 1419 of file w3gdatmd.F90.

1419  REAL(8), POINTER :: B_JGS_DIFF_THR

Referenced by pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), and w3setg().

◆ b_jgs_limiter

logical, pointer w3gdatmd::b_jgs_limiter

Definition at line 1413 of file w3gdatmd.F90.

1413  LOGICAL, POINTER :: B_JGS_LIMITER

Referenced by pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), w3setg(), and w3srcemd::w3srce().

◆ b_jgs_limiter_func

integer, pointer w3gdatmd::b_jgs_limiter_func

Definition at line 1417 of file w3gdatmd.F90.

1417  INTEGER, POINTER :: B_JGS_LIMITER_FUNC

Referenced by w3setg(), and w3srcemd::w3srce().

◆ b_jgs_maxiter

integer, pointer w3gdatmd::b_jgs_maxiter

Definition at line 1416 of file w3gdatmd.F90.

1416  INTEGER, POINTER :: B_JGS_MAXITER

Referenced by pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), and w3setg().

◆ b_jgs_nlevel

integer, pointer w3gdatmd::b_jgs_nlevel

Definition at line 1421 of file w3gdatmd.F90.

1421  INTEGER, POINTER :: B_JGS_NLEVEL

Referenced by pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), and w3setg().

◆ b_jgs_norm_thr

real(8), pointer w3gdatmd::b_jgs_norm_thr

Definition at line 1420 of file w3gdatmd.F90.

1420  REAL(8), POINTER :: B_JGS_NORM_THR

Referenced by pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), and w3setg().

◆ b_jgs_pmin

real(8), pointer w3gdatmd::b_jgs_pmin

Definition at line 1418 of file w3gdatmd.F90.

1418  REAL(8), POINTER :: B_JGS_PMIN

Referenced by pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), and w3setg().

◆ b_jgs_source_nonlinear

logical, pointer w3gdatmd::b_jgs_source_nonlinear

Definition at line 1422 of file w3gdatmd.F90.

1422  LOGICAL, POINTER :: B_JGS_SOURCE_NONLINEAR

Referenced by pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), and w3setg().

◆ b_jgs_terminate_difference

logical, pointer w3gdatmd::b_jgs_terminate_difference

Definition at line 1411 of file w3gdatmd.F90.

1411  LOGICAL, POINTER :: B_JGS_TERMINATE_DIFFERENCE

Referenced by pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), and w3setg().

◆ b_jgs_terminate_maxiter

logical, pointer w3gdatmd::b_jgs_terminate_maxiter

Definition at line 1410 of file w3gdatmd.F90.

1410  LOGICAL, POINTER :: B_JGS_TERMINATE_MAXITER

Referenced by pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), and w3setg().

◆ b_jgs_terminate_norm

logical, pointer w3gdatmd::b_jgs_terminate_norm

Definition at line 1412 of file w3gdatmd.F90.

1412  LOGICAL, POINTER :: B_JGS_TERMINATE_NORM

Referenced by pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), and w3setg().

◆ b_jgs_use_jacobi

logical, pointer w3gdatmd::b_jgs_use_jacobi

◆ bbeta

real pointer w3gdatmd::bbeta

◆ btbeta

real, pointer w3gdatmd::btbeta

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3iogomd::calc_wbt(), and w3setg().

◆ cap_id

integer, pointer w3gdatmd::cap_id

Definition at line 1285 of file w3gdatmd.F90.

Referenced by w3flx3md::w3flx3(), and w3setg().

◆ capchnk

real, dimension(:), pointer w3gdatmd::capchnk

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3src4md::calc_ustar(), and w3setg().

◆ ccng

real, pointer w3gdatmd::ccng

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3setg(), and w3updtmd::w3uwnd().

◆ ccon

integer, dimension(:), pointer w3gdatmd::ccon

Definition at line 1124 of file w3gdatmd.F90.

1124  INTEGER, POINTER :: CCON(:), COUNTCON(:), IE_CELL(:), &
1125  POS_CELL(:), &
1126  IAA(:), JAA(:), POSI(:,:), &
1127  I_DIAG(:), JA_IE(:,:,:), &
1128  INDEX_CELL(:)

Referenced by w3triamd::area_si(), pdlib_w3profsmd::pdlib_init(), w3triamd::readmshobc(), w3triamd::ug_getopenboundary(), w3profsmd::w3cflug(), w3setg(), w3profsmd::w3xypfsfct2(), w3profsmd::w3xypfsn2(), w3profsmd::w3xypfsnimp(), w3profsmd::w3xypfspsi2(), and w3profsmd::w3xypug().

◆ ccps

real, pointer w3gdatmd::ccps

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3setg(), and w3updtmd::w3uwnd().

◆ cd_max

real, pointer w3gdatmd::cd_max

Definition at line 1286 of file w3gdatmd.F90.

Referenced by w3flx3md::w3flx3(), and w3setg().

◆ cdsa0

real, pointer w3gdatmd::cdsa0

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ cdsa1

real, pointer w3gdatmd::cdsa1

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ cdsa2

real, pointer w3gdatmd::cdsa2

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ cdsb0

real, pointer w3gdatmd::cdsb0

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ cdsb1

real, pointer w3gdatmd::cdsb1

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ cdsb2

real, pointer w3gdatmd::cdsb2

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ cdsb3

real, pointer w3gdatmd::cdsb3

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ cinxsi

real pointer w3gdatmd::cinxsi

Definition at line 1282 of file w3gdatmd.F90.

1282  REAL, POINTER :: CINXSI

Referenced by w3flx2md::w3flx2(), w3flx3md::w3flx3(), w3setg(), and w3src2md::w3spr2().

◆ clatf

real, dimension(:), pointer w3gdatmd::clatf

◆ clatis

real, dimension(:), pointer w3gdatmd::clatis

Definition at line 1197 of file w3gdatmd.F90.

1197  REAL , POINTER :: CLATIS(:) ! INVERSE OF COS(LAT) DEFINED ON ISEA

Referenced by w3triamd::ug_gradients(), and w3setg().

◆ clatmn

real, pointer w3gdatmd::clatmn

Definition at line 1257 of file w3gdatmd.F90.

Referenced by w3setg(), and w3pro2md::w3xyp2().

◆ clats

◆ clgtype

◆ cmprtrck

logical, pointer w3gdatmd::cmprtrck

Definition at line 1220 of file w3gdatmd.F90.

1220  LOGICAL, POINTER :: CMPRTRCK

Referenced by w3iotrmd::w3iotr(), and w3setg().

◆ cnlsa

real, pointer w3gdatmd::cnlsa

Definition at line 1377 of file w3gdatmd.F90.

1377  REAL, POINTER :: CNLSA, CNLSC, CNLSFM, &
1378  CNLSC1, CNLSC2, CNLSC3, SNSST(:,:)

Referenced by w3snlsmd::insnls(), and w3setg().

◆ cnlsc

real, pointer w3gdatmd::cnlsc

Definition at line 1377 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snlsmd::w3snls().

◆ cnlsc1

real, pointer w3gdatmd::cnlsc1

Definition at line 1377 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snlsmd::w3snls().

◆ cnlsc2

real, pointer w3gdatmd::cnlsc2

Definition at line 1377 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snlsmd::w3snls().

◆ cnlsc3

real, pointer w3gdatmd::cnlsc3

Definition at line 1377 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snlsmd::w3snls().

◆ cnlsfm

real, pointer w3gdatmd::cnlsfm

Definition at line 1377 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snlsmd::w3snls().

◆ countcon

integer, dimension(:), pointer w3gdatmd::countcon

◆ countot

integer, pointer w3gdatmd::countot

Definition at line 1109 of file w3gdatmd.F90.

Referenced by w3triamd::count(), w3triamd::readmsh(), w3dimug(), and w3setg().

◆ countri

integer, pointer w3gdatmd::countri

◆ crit_dep_stp

real(8), pointer w3gdatmd::crit_dep_stp

Definition at line 1409 of file w3gdatmd.F90.

1409  REAL(8), POINTER :: CRIT_DEP_STP

Referenced by w3wavset::compute_active_node(), and w3setg().

◆ crossdiff

real, dimension(:,:), pointer w3gdatmd::crossdiff

Definition at line 1132 of file w3gdatmd.F90.

1132  REAL, POINTER :: CROSSDIFF(:,:)

Referenced by w3setg().

◆ cthg0s

real, dimension(:), pointer w3gdatmd::cthg0s

Definition at line 1198 of file w3gdatmd.F90.

1198  REAL , POINTER :: CTHG0S(:) ! TAN(Y)/R, DEFINED ON ISEA

Referenced by w3parall::prop_refraction_pr1(), w3parall::prop_refraction_pr3(), w3setg(), and w3wavemd::w3wave().

◆ ctmax

◆ ctrnx

real, dimension(:), pointer w3gdatmd::ctrnx

Definition at line 1202 of file w3gdatmd.F90.

1202  REAL, POINTER :: CTRNX(:), CTRNY(:), CLATF(:)

Referenced by w3psmcmd::w3psmc(), and w3setg().

◆ ctrny

real, dimension(:), pointer w3gdatmd::ctrny

Definition at line 1202 of file w3gdatmd.F90.

Referenced by w3psmcmd::w3psmc(), and w3setg().

◆ cumulw

real, dimension(:,:), pointer w3gdatmd::cumulw

Definition at line 1323 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3src4md::w3sds4(), and w3setg().

◆ dcki

real, dimension(:,:), pointer w3gdatmd::dcki

Definition at line 1323 of file w3gdatmd.F90.

1323  REAL, POINTER :: DCKI(:,:), SATWEIGHTS(:,:),CUMULW(:,:),QBI(:,:)

Referenced by w3src4md::insin4(), w3src4md::w3sds4(), and w3setg().

◆ ddelta1

real, pointer w3gdatmd::ddelta1

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3src3md::w3sds3(), and w3setg().

◆ ddelta2

real, pointer w3gdatmd::ddelta2

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3src3md::w3sds3(), and w3setg().

◆ dden

◆ dden2

real, dimension(:), pointer w3gdatmd::dden2

◆ dmin

◆ do_change_wlv

logical, pointer w3gdatmd::do_change_wlv

Definition at line 1407 of file w3gdatmd.F90.

1407  LOGICAL, POINTER :: DO_CHANGE_WLV

Referenced by w3initmd::w3init(), w3setg(), and w3updtmd::w3ulev().

◆ dpdx

real, dimension(:,:), pointer w3gdatmd::dpdx

Definition at line 1208 of file w3gdatmd.F90.

1208  REAL , POINTER :: DPDX(:,:), DPDY(:,:) ! DP/DX & DP/DY DEFINED ON IX,IY

Referenced by w3pro3md::w3cflxy(), w3updtmd::w3dzxy(), w3gntx(), w3iotrmd::w3iotr(), w3setg(), w3pro1md::w3xyp1(), w3pro2md::w3xyp2(), and w3pro3md::w3xyp3().

◆ dpdy

real, dimension(:,:), pointer w3gdatmd::dpdy

◆ dpthnl

real, dimension(:), pointer w3gdatmd::dpthnl

Definition at line 1353 of file w3gdatmd.F90.

1353  REAL, POINTER :: DPTHNL(:)

Referenced by w3snl2md::insnl2(), and w3setg().

◆ dqdx

real, dimension(:,:), pointer w3gdatmd::dqdx

Definition at line 1209 of file w3gdatmd.F90.

1209  REAL , POINTER :: DQDX(:,:), DQDY(:,:) ! DQ/DX & DQ/DY DEFINED ON IX,IY

Referenced by w3pro3md::w3cflxy(), w3updtmd::w3dzxy(), w3gntx(), w3iotrmd::w3iotr(), w3setg(), w3pro1md::w3xyp1(), w3pro2md::w3xyp2(), and w3pro3md::w3xyp3().

◆ dqdy

real, dimension(:,:), pointer w3gdatmd::dqdy

◆ dsii

◆ dsip

◆ dtcfl

◆ dtcfli

real, pointer w3gdatmd::dtcfli

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3setg(), and w3wavemd::w3wave().

◆ dth

real, pointer w3gdatmd::dth

Definition at line 1232 of file w3gdatmd.F90.

1232  REAL, POINTER :: DTH, XFR, FR1, FTE, FTF, FTWN, FTTR, &
1233  FTWL, FACTI1, FACTI2, FACHFA, FACHFE

Referenced by w3fld1md::appendtail(), w3iogomd::calc_wbt(), w3sbs1md::insbs1(), w3src4md::insin4(), w3snl1md::insnl1(), w3snl3md::insnl3(), w3snl5md::insnl5(), w3snlsmd::insnls(), pdlib_w3profsmd::pdlib_explicit_block(), pdlib_w3profsmd::pdlib_w3xypug(), w3parall::prop_freq_shift(), w3parall::prop_freq_shift_m2(), w3parall::prop_refraction_pr1(), w3parall::prop_refraction_pr3(), w3partmd::ptmean(), w3iogomd::secondhh(), w3triamd::set_ug_iobp(), pdlib_w3profsmd::set_ug_iobp_pdlib_init(), w3iogomd::skewness(), w3psmcmd::smcdhxy(), w3psmcmd::smcgtcrfr(), w3psmcmd::smckuno2(), w3src6md::tau_wave_atmos(), w3canomd::w3add2ndorder(), w3gig1md::w3addig(), w3bounc(), w3profsmd::w3cflug(), w3pro3md::w3cflxy(), w3fld1md::w3fld1(), w3fld2md::w3fld2(), w3iobcmd::w3iobc(), w3iotrmd::w3iotr(), w3psmcmd::w3krtn(), w3iogomd::w3outg(), w3psmcmd::w3psmc(), w3sbs1md::w3sbs1(), w3sbt4md::w3sbt4(), w3src2md::w3sds2(), w3src4md::w3sds4(), w3src6md::w3sds6(), w3setg(), w3src3md::w3sin3(), w3src4md::w3sin4(), w3src6md::w3sin6(), w3sis1md::w3sis1(), w3snl4md::w3snl4(), w3snl1md::w3snlgqm(), w3snlsmd::w3snls(), w3src2md::w3spr2(), w3src3md::w3spr3(), w3src4md::w3spr4(), w3src6md::w3spr6(), w3ref1md::w3sref(), w3str1md::w3str1(), w3swldmd::w3swl6(), w3updtmd::w3uini(), w3uprstr(), w3wavemd::w3wave(), w3pro2md::w3xyp2(), w3pro3md::w3xyp3(), and w3profsmd::w3xypug().

◆ dtmax

◆ dtme

real, pointer w3gdatmd::dtme

Definition at line 1257 of file w3gdatmd.F90.

1257  REAL, POINTER :: DTME, CLATMN

Referenced by w3setg(), and w3pro2md::w3xyp2().

◆ dtmin

real, pointer w3gdatmd::dtmin

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3setg(), w3sis1md::w3sis1(), and w3srcemd::w3srce().

◆ dtms

real, pointer w3gdatmd::dtms

Definition at line 1263 of file w3gdatmd.F90.

1263  REAL, POINTER :: DTMS, Refran

Referenced by w3psmcmd::w3psmc(), and w3setg().

◆ dxdp

real, dimension(:,:), pointer w3gdatmd::dxdp

Definition at line 1206 of file w3gdatmd.F90.

1206  REAL , POINTER :: DXDP(:,:), DXDQ(:,:) ! DX/DP & DX/DQ DEFINED ON IX,IY

Referenced by w3gntx(), w3setg(), w3setref(), wminitmd::wminit(), and wminitmd::wminitnml().

◆ dxdq

real, dimension(:,:), pointer w3gdatmd::dxdq

Definition at line 1206 of file w3gdatmd.F90.

Referenced by w3gntx(), w3setg(), w3setref(), wminitmd::wminit(), and wminitmd::wminitnml().

◆ dxymax

real, pointer w3gdatmd::dxymax

◆ dydp

real, dimension(:,:), pointer w3gdatmd::dydp

Definition at line 1207 of file w3gdatmd.F90.

1207  REAL , POINTER :: DYDP(:,:), DYDQ(:,:) ! DY/DP & DY/DQ DEFINED ON IX,IY

Referenced by w3gntx(), w3setg(), w3setref(), wminitmd::wminit(), and wminitmd::wminitnml().

◆ dydq

real, dimension(:,:), pointer w3gdatmd::dydq

Definition at line 1207 of file w3gdatmd.F90.

Referenced by w3gntx(), w3setg(), w3setref(), wminitmd::wminit(), and wminitmd::wminitnml().

◆ e3df

integer, dimension(:,:), pointer w3gdatmd::e3df

◆ ec2

◆ ecos

real, dimension(:), pointer w3gdatmd::ecos

◆ edges

integer, dimension(:,:), pointer w3gdatmd::edges

Definition at line 1105 of file w3gdatmd.F90.

1105  INTEGER, POINTER :: EDGES(:,:), NEIGH(:,:)

Referenced by w3wavset::fd_compute_diff(), w3wavset::fd_wave_setup_compute_system(), and w3setg().

◆ es2

◆ esc

◆ esin

real, dimension(:), pointer w3gdatmd::esin

◆ fachfa

◆ fachfe

◆ facp

real, pointer w3gdatmd::facp

Definition at line 1245 of file w3gdatmd.F90.

1245  REAL, POINTER :: FACP, XREL, XFLT, FXFM, FXPM, &
1246  XFT, XFC, FACSD, FHMAX

Referenced by pdlib_w3profsmd::action_limiter_local(), pdlib_w3profsmd::calcarray_jacobi_source_1(), pdlib_w3profsmd::calcarray_jacobi_source_2(), pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), w3setg(), and w3srcemd::w3srce().

◆ facsd

real, pointer w3gdatmd::facsd

Definition at line 1245 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ facti1

real, pointer w3gdatmd::facti1

◆ facti2

real, pointer w3gdatmd::facti2

◆ fdonly

logical, pointer w3gdatmd::fdonly

Definition at line 1394 of file w3gdatmd.F90.

1394  LOGICAL, POINTER :: FDONLY

Referenced by w3sdb1md::w3sdb1(), and w3setg().

◆ ffacberg

real, pointer w3gdatmd::ffacberg

Definition at line 1136 of file w3gdatmd.F90.

1136  REAL, POINTER :: FFACBERG

Referenced by w3setg(), and w3updtmd::w3utrn().

◆ ffng

real, pointer w3gdatmd::ffng

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3setg(), and w3updtmd::w3uwnd().

◆ ffps

real, pointer w3gdatmd::ffps

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3setg(), and w3updtmd::w3uwnd().

◆ ffxfa

real, pointer w3gdatmd::ffxfa

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ ffxfm

real pointer w3gdatmd::ffxfm

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ ffxpm

real pointer w3gdatmd::ffxpm

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ fhmax

real, pointer w3gdatmd::fhmax

Definition at line 1245 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ fice0

real, pointer w3gdatmd::fice0

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3setg(), and w3updtmd::w3utrn().

◆ ficel

real, pointer w3gdatmd::ficel

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3setg(), and w3updtmd::w3utrn().

◆ ficen

real, pointer w3gdatmd::ficen

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3setg(), w3updtmd::w3uice(), and w3updtmd::w3utrn().

◆ filext

◆ flagll

◆ flagst

logical, dimension(:), pointer w3gdatmd::flagst

Definition at line 1221 of file w3gdatmd.F90.

1221  LOGICAL, POINTER :: FLAGST(:)

Referenced by w3setg(), w3wavemd::w3wave(), wmgridmd::wmgeql(), wmgridmd::wmghgh(), wminitmd::wminit(), and wminitmd::wminitnml().

◆ flagunr

logical, pointer w3gdatmd::flagunr

Definition at line 1193 of file w3gdatmd.F90.

1193  LOGICAL, POINTER :: FLAGUNR

Referenced by w3ounfmetamd::init_meta(), w3crnc(), w3exnc(), w3iopomd::w3iope(), w3iopomd::w3iopp(), and w3setg().

◆ flck

◆ flcth

◆ flcx

◆ flcy

◆ fldry

logical, pointer w3gdatmd::fldry

Definition at line 1217 of file w3gdatmd.F90.

Referenced by w3setg(), and w3wavemd::w3wave().

◆ flsou

logical, pointer w3gdatmd::flsou

◆ flx4a0

real, pointer w3gdatmd::flx4a0

Definition at line 1289 of file w3gdatmd.F90.

1289  REAL, POINTER :: FLX4A0

Referenced by w3flx4md::w3flx4(), and w3setg().

◆ fpimin

real, pointer w3gdatmd::fpimin

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), w3setg(), and w3src2md::w3sin2().

◆ fr1

◆ frq

real, dimension(:), pointer w3gdatmd::frq

Definition at line 1361 of file w3gdatmd.F90.

1361  REAL, POINTER :: FRQ(:), XSI(:), &
1362  QST2(:,:,:), QST3(:,:,:), &
1363  QST5(:,:,:), QST6(:,:,:), &
1364  SNLL(:), SNLM(:), SNLT(:), &
1365  SNLCD(:), SNLCS(:)

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ fsbccfl

◆ fsfct

logical, pointer w3gdatmd::fsfct

◆ fsfreqshift

◆ fshf

real, pointer w3gdatmd::fshf

Definition at line 1295 of file w3gdatmd.F90.

Referenced by w3setg(), and w3sln1md::w3sln1().

◆ fsn

logical, pointer w3gdatmd::fsn

Definition at line 1405 of file w3gdatmd.F90.

1405  LOGICAL, POINTER :: FSN,FSPSI,FSFCT,FSNIMP,FSTOTALIMP,FSTOTALEXP

Referenced by pdlib_w3profsmd::pdlib_init(), pdlib_w3profsmd::pdlib_w3xypug(), w3initmd::w3init(), w3setg(), and w3profsmd::w3xypug().

◆ fsnimp

logical, pointer w3gdatmd::fsnimp

◆ fspm

real, pointer w3gdatmd::fspm

Definition at line 1295 of file w3gdatmd.F90.

Referenced by w3setg(), and w3sln1md::w3sln1().

◆ fspsi

logical, pointer w3gdatmd::fspsi

◆ fsrefraction

logical, pointer w3gdatmd::fsrefraction

◆ fssource

◆ fstotalexp

logical, pointer w3gdatmd::fstotalexp

◆ fstotalimp

logical, pointer w3gdatmd::fstotalimp

◆ fswell

real, pointer w3gdatmd::fswell

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3setg(), and w3src2md::w3sin2().

◆ fswnd

logical, pointer w3gdatmd::fswnd

◆ fte

◆ ftf

◆ fttr

real, pointer w3gdatmd::fttr

Definition at line 1232 of file w3gdatmd.F90.

Referenced by w3srcemd::calc_fpi(), w3iogomd::w3outg(), w3setg(), and w3src2md::w3sin2().

◆ ftwl

real, pointer w3gdatmd::ftwl

Definition at line 1232 of file w3gdatmd.F90.

Referenced by w3iogomd::w3outg(), and w3setg().

◆ ftwn

◆ funo3

logical, pointer w3gdatmd::funo3

Definition at line 1264 of file w3gdatmd.F90.

1264  LOGICAL, POINTER :: FUNO3, FVERG, FSWND, ARCTC

Referenced by w3psmcmd::w3psmc(), and w3setg().

◆ fverg

logical, pointer w3gdatmd::fverg

Definition at line 1264 of file w3gdatmd.F90.

Referenced by w3psmcmd::w3psmc(), and w3setg().

◆ fxfm

real, pointer w3gdatmd::fxfm

Definition at line 1245 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ fxpm

real, pointer w3gdatmd::fxpm

Definition at line 1245 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ ginit

logical, pointer w3gdatmd::ginit

Definition at line 1217 of file w3gdatmd.F90.

1217  LOGICAL, POINTER :: GINIT, FLDRY, FLCX, FLCY, FLCTH, FLCK, FLSOU, IICEDISP,&
1218  IICESMOOTH

Referenced by w3setg().

◆ gname

character(len=30), pointer w3gdatmd::gname

◆ gqamp

real, dimension(:), pointer w3gdatmd::gqamp

Definition at line 1346 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl1md::w3snlgqm().

◆ gqnf1

integer, pointer w3gdatmd::gqnf1

Definition at line 1345 of file w3gdatmd.F90.

Referenced by w3snl1md::insnlgqm(), and w3setg().

◆ gqnq_om2

integer, pointer w3gdatmd::gqnq_om2

Definition at line 1345 of file w3gdatmd.F90.

Referenced by w3snl1md::insnlgqm(), and w3setg().

◆ gqnt1

integer, pointer w3gdatmd::gqnt1

Definition at line 1345 of file w3gdatmd.F90.

Referenced by w3snl1md::insnlgqm(), and w3setg().

◆ gqthrcou

real, pointer w3gdatmd::gqthrcou

Definition at line 1346 of file w3gdatmd.F90.

Referenced by w3snl1md::insnlgqm(), and w3setg().

◆ gqthrsat

real, pointer w3gdatmd::gqthrsat

Definition at line 1346 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl1md::w3snlgqm().

◆ grids

◆ gridshift

real(8), pointer w3gdatmd::gridshift

Definition at line 1189 of file w3gdatmd.F90.

1189  REAL(8),POINTER :: GRIDSHIFT ! see notes in WMGHGH

Referenced by w3setg(), wminitmd::wminit(), and wminitmd::wminitnml().

◆ gsqrt

real, dimension(:,:), pointer w3gdatmd::gsqrt

Definition at line 1210 of file w3gdatmd.F90.

1210  REAL , POINTER :: GSQRT(:,:) ! SQRT(G) DEFINED ON IX,IY

Referenced by w3pro3md::w3cflxy(), w3gntx(), w3setg(), w3pro1md::w3xyp1(), w3pro2md::w3xyp2(), and w3pro3md::w3xyp3().

◆ gsu

type(t_gsu), pointer w3gdatmd::gsu

Definition at line 1226 of file w3gdatmd.F90.

1226  TYPE(T_GSU), POINTER :: GSU ! Grid search utility object

Referenced by w3iobcmd::w3iobc(), w3iopomd::w3iopp(), w3iotrmd::w3iotr(), w3setg(), wminitmd::wminit(), wminitmd::wminitnml(), and wmiopomd::wmiopp().

◆ gtype

integer, pointer w3gdatmd::gtype

Definition at line 1094 of file w3gdatmd.F90.

1094  INTEGER, POINTER :: GTYPE

Referenced by pdlib_w3profsmd::all_va_integral_print(), pdlib_w3profsmd::apply_boundary_condition_va(), pdlib_w3profsmd::check_array_integral_nx_r8_maxfunct(), w3oacpmd::cpl_oasis_define(), w3oacpmd::cpl_oasis_grid(), wmesmfmd::fieldindex(), w3parall::get_jsea_ibelong(), w3parall::init_get_isea(), w3parall::init_get_jsea_isproc(), wmmdatmd::init_get_jsea_isproc_glob(), pdlib_w3profsmd::pdlib_w3xypug(), wmesmfmd::readfromfile(), pdlib_w3profsmd::scal_integral_print_general(), w3parall::set_up_nseal_nsealm(), wmesmfmd::setupimpbmsk(), pdlib_w3profsmd::test_mpi_status(), w3gig1md::w3addig(), w3bounc(), w3bound(), w3crnc(), w3adatmd::w3dima(), w3wdatmd::w3dimw(), w3dimx(), w3adatmd::w3dmnl(), w3exnc(), w3gntx(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iopomd::w3iopp(), w3iorsmd::w3iors(), w3iotrmd::w3iotr(), w3pro3md::w3map3(), w3initmd::w3mpii(), w3initmd::w3mpio(), w3ounf(), w3adatmd::w3seta(), w3setg(), w3sic2md::w3sic2(), w3sic3md::w3sic3(), w3snl5md::w3snl5(), w3srcemd::w3srce(), w3ref1md::w3sref(), w3updtmd::w3uini(), w3updtmd::w3ulev(), w3uprstr(), w3updtmd::w3utrn(), w3wavemd::w3wave(), w3adatmd::w3xdma(), w3adatmd::w3xeta(), w3profsmd::w3xypug(), w3wavset::wave_setup_computation(), wmgridmd::wmgeql(), wmgridmd::wmghgh(), wminitmd::wminit(), wminitmd::wminitnml(), wminiomd::wmioeg(), wminiomd::wmioes(), wmiopomd::wmiopp(), wmupdtmd::wmupds(), wmupdtmd::wmupdv(), and pdlib_w3profsmd::write_var_to_text_file().

◆ guginit

logical, pointer w3gdatmd::guginit

Definition at line 1134 of file w3gdatmd.F90.

1134  LOGICAL, POINTER :: GUGINIT

Referenced by w3setg().

◆ hpfac

real, dimension(:,:), pointer w3gdatmd::hpfac

◆ hqfac

real, dimension(:,:), pointer w3gdatmd::hqfac

◆ i_diag

integer, dimension(:), pointer w3gdatmd::i_diag

Definition at line 1124 of file w3gdatmd.F90.

Referenced by w3setg().

◆ iaa

integer, dimension(:), pointer w3gdatmd::iaa

◆ ialt

integer, pointer w3gdatmd::ialt

Definition at line 1368 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl4md::w3snl4().

◆ ic2pars

real, dimension(:), pointer w3gdatmd::ic2pars

Definition at line 1145 of file w3gdatmd.F90.

1145  REAL, POINTER :: IC2PARS(:)

Referenced by w3setg(), and w3sic2md::w3sic2().

◆ ic3pars

real, dimension(:), pointer w3gdatmd::ic3pars

Definition at line 1148 of file w3gdatmd.F90.

1148  REAL, POINTER :: IC3PARS(:)

Referenced by w3sic3md::w3ic3wncg_cheng(), w3sic3md::w3ic3wncg_v1(), w3setg(), w3sic3md::w3sic3(), and w3wavemd::w3wave().

◆ ic4_cn

real, dimension(:), pointer w3gdatmd::ic4_cn

Definition at line 1154 of file w3gdatmd.F90.

1154  REAL, POINTER :: IC4_CN(:)

Referenced by w3setg(), and w3sic4md::w3sic4().

◆ ic4_fc

real, dimension(:), pointer w3gdatmd::ic4_fc

Definition at line 1153 of file w3gdatmd.F90.

1153  REAL, POINTER :: IC4_FC(:)

Referenced by w3setg(), and w3sic4md::w3sic4().

◆ ic4_fmin

real, pointer w3gdatmd::ic4_fmin

Definition at line 1155 of file w3gdatmd.F90.

1155  REAL, POINTER :: IC4_FMIN, IC4_KIBK

Referenced by w3setg(), and w3sic4md::w3sic4().

◆ ic4_ki

real, dimension(:), pointer w3gdatmd::ic4_ki

Definition at line 1152 of file w3gdatmd.F90.

1152  REAL, POINTER :: IC4_KI(:)

Referenced by w3setg(), and w3sic4md::w3sic4().

◆ ic4_kibk

real, pointer w3gdatmd::ic4_kibk

Definition at line 1155 of file w3gdatmd.F90.

Referenced by w3setg(), and w3sic4md::w3sic4().

◆ ic4pars

integer, dimension(:), pointer w3gdatmd::ic4pars

Definition at line 1151 of file w3gdatmd.F90.

1151  INTEGER, POINTER :: IC4PARS(:)

Referenced by w3setg(), and w3sic4md::w3sic4().

◆ ic5pars

real, dimension(:), pointer w3gdatmd::ic5pars

Definition at line 1158 of file w3gdatmd.F90.

1158  REAL, POINTER :: IC5PARS(:)

Referenced by w3sic5md::fsdisp(), w3setg(), and w3sic5md::w3sic5().

◆ icescales

real, dimension(:), pointer w3gdatmd::icescales

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ iclbac

integer, dimension(:), pointer w3gdatmd::iclbac

Definition at line 1171 of file w3gdatmd.F90.

Referenced by w3setg(), and w3wavemd::w3wave().

◆ iclose

◆ iclose_none

integer, parameter w3gdatmd::iclose_none = ICLO_NONE

◆ iclose_smpl

integer, parameter w3gdatmd::iclose_smpl = ICLO_SMPL

◆ iclose_trpl

integer, parameter w3gdatmd::iclose_trpl = ICLO_TRPL

◆ ie_cell

◆ ien

◆ igpars

real, dimension(:), pointer w3gdatmd::igpars

◆ igrid

◆ iiceddisp

real, pointer w3gdatmd::iiceddisp

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3dispmd::liu_forward_dispersion(), and w3setg().

◆ iicedisp

logical, pointer w3gdatmd::iicedisp

Definition at line 1217 of file w3gdatmd.F90.

Referenced by w3exnc(), w3expo(), w3setg(), and w3srcemd::w3srce().

◆ iicefdisp

real, pointer w3gdatmd::iicefdisp

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3dispmd::liu_forward_dispersion(), and w3setg().

◆ iicehdisp

real, pointer w3gdatmd::iicehdisp

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3dispmd::liu_forward_dispersion(), and w3setg().

◆ iicehfac

real, pointer w3gdatmd::iicehfac

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3setg(), and w3updtmd::w3uic1().

◆ iicehinit

real, pointer w3gdatmd::iicehinit

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3setg().

◆ iicehmin

real, pointer w3gdatmd::iicehmin

◆ iicesmooth

logical, pointer w3gdatmd::iicesmooth

Definition at line 1217 of file w3gdatmd.F90.

Referenced by w3setg(), w3sis2md::w3sis2(), and w3srcemd::w3srce().

◆ ijkcel

◆ ijkcel3

integer, dimension(:), pointer w3gdatmd::ijkcel3

Definition at line 1174 of file w3gdatmd.F90.

1174  INTEGER, POINTER :: IJKCel3(:), IJKCel4(:), &
1175  IJKVFc5(:), IJKVFc6(:), &
1176  IJKUFc5(:), IJKUFc6(:)

Referenced by w3psmcmd::smcxuno2(), w3psmcmd::smcxuno2r(), w3psmcmd::smcxuno3(), w3psmcmd::smcxuno3r(), w3psmcmd::w3psmc(), and w3setg().

◆ ijkcel4

integer, dimension(:), pointer w3gdatmd::ijkcel4

◆ ijkufc

integer, dimension(:,:), pointer w3gdatmd::ijkufc

◆ ijkufc5

integer, dimension(:), pointer w3gdatmd::ijkufc5

Definition at line 1174 of file w3gdatmd.F90.

Referenced by w3psmcmd::smcaverg(), w3psmcmd::w3psmc(), and w3setg().

◆ ijkufc6

integer, dimension(:), pointer w3gdatmd::ijkufc6

Definition at line 1174 of file w3gdatmd.F90.

Referenced by w3psmcmd::smcaverg(), w3psmcmd::w3psmc(), and w3setg().

◆ ijkvfc

integer, dimension(:,:), pointer w3gdatmd::ijkvfc

◆ ijkvfc5

integer, dimension(:), pointer w3gdatmd::ijkvfc5

Definition at line 1174 of file w3gdatmd.F90.

Referenced by w3psmcmd::w3psmc(), and w3setg().

◆ ijkvfc6

integer, dimension(:), pointer w3gdatmd::ijkvfc6

Definition at line 1174 of file w3gdatmd.F90.

Referenced by w3psmcmd::w3psmc(), and w3setg().

◆ iktab

integer, dimension(:,:), pointer w3gdatmd::iktab

Definition at line 1321 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3src4md::w3sds4(), and w3setg().

◆ index_cell

integer, dimension(:), pointer w3gdatmd::index_cell

◆ index_map

integer, dimension(:), pointer w3gdatmd::index_map

Definition at line 1114 of file w3gdatmd.F90.

1114  INTEGER, POINTER :: INDEX_MAP(:)

Referenced by pdlib_w3profsmd::pdlib_iobp_init(), pdlib_w3profsmd::pdlib_mapsta_init(), and pdlib_w3profsmd::pdlib_w3xypug().

◆ iobdp

◆ iobdp_loc

◆ iobp

◆ iobp_loc

◆ iobpa

◆ iobpa_loc

◆ iobpd

◆ iobpd_loc

◆ ipars

integer w3gdatmd::ipars = -1

Definition at line 618 of file w3gdatmd.F90.

Referenced by w3setg().

◆ iqtpe

integer pointer w3gdatmd::iqtpe

Definition at line 1345 of file w3gdatmd.F90.

1345  INTEGER, POINTER :: IQTPE, GQNF1, GQNT1, GQNQ_OM2

Referenced by w3snl2md::insnl2(), w3exnc(), w3setg(), w3snl2md::w3snl2(), and w3srcemd::w3srce().

◆ is1c1

real, pointer w3gdatmd::is1c1

Definition at line 1426 of file w3gdatmd.F90.

1426  REAL, POINTER :: IS1C1, IS1C2

Referenced by w3setg(), and w3sis1md::w3sis1().

◆ is1c2

real, pointer w3gdatmd::is1c2

Definition at line 1426 of file w3gdatmd.F90.

Referenced by w3setg(), and w3sis1md::w3sis1().

◆ is2pars

real, dimension(:), pointer w3gdatmd::is2pars

Definition at line 1161 of file w3gdatmd.F90.

1161  REAL, POINTER :: IS2PARS(:)

Referenced by w3sis2md::insis2(), w3setg(), w3sis2md::w3sis2(), and w3srcemd::w3srce().

◆ isgrd

integer w3gdatmd::isgrd = -1

Definition at line 618 of file w3gdatmd.F90.

Referenced by w3setg().

◆ ismcbp

integer, dimension(:), pointer w3gdatmd::ismcbp

Definition at line 1171 of file w3gdatmd.F90.

1171  INTEGER, POINTER :: ISMCBP(:), ICLBAC(:)

Referenced by w3setg().

◆ itsa

integer, pointer w3gdatmd::itsa

Definition at line 1368 of file w3gdatmd.F90.

1368  INTEGER, POINTER :: ITSA, IALT

Referenced by w3setg(), and w3snl4md::w3snl4().

◆ ja_ie

integer, dimension(:,:,:), pointer w3gdatmd::ja_ie

Definition at line 1124 of file w3gdatmd.F90.

Referenced by w3setg().

◆ jaa

integer, dimension(:), pointer w3gdatmd::jaa

◆ kdcon

real, pointer w3gdatmd::kdcon

Definition at line 1347 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl1md::w3snl1().

◆ kdmn

real, pointer w3gdatmd::kdmn

Definition at line 1347 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl1md::w3snl1().

◆ lam

real, pointer w3gdatmd::lam

Definition at line 1347 of file w3gdatmd.F90.

Referenced by w3snl1md::insnl1(), and w3setg().

◆ len

real(8), dimension(:,:), pointer w3gdatmd::len

Definition at line 1122 of file w3gdatmd.F90.

Referenced by w3triamd::coordmax(), w3triamd::nvectri(), and w3setg().

◆ mapfs

◆ mapsf

integer, dimension(:,:), pointer w3gdatmd::mapsf

Definition at line 1163 of file w3gdatmd.F90.

Referenced by pdlib_w3profsmd::apply_boundary_condition(), pdlib_w3profsmd::block_solver_init(), w3iogomd::calc_wbt(), w3oacpmd::cpl_oasis_define(), wmesmfmd::createexpmesh(), w3wavset::fd_compute_diff(), wmesmfmd::fieldindex(), w3parall::get_jsea_ibelong(), w3parall::init_get_jsea_isproc(), w3smcomd::mapsta_smc(), pdlib_w3profsmd::pdlib_explicit_block(), pdlib_w3profsmd::pdlib_w3xypfsfct2(), pdlib_w3profsmd::pdlib_w3xypfsn2(), pdlib_w3profsmd::pdlib_w3xypfspsi2(), w3wavset::preparation_fd_scheme(), w3parall::prop_freq_shift(), w3parall::prop_freq_shift_m2(), w3parall::prop_refraction_pr1(), w3parall::prop_refraction_pr3(), w3agcmmd::rcv_fields_from_atmos(), w3igcmmd::rcv_fields_from_ice(), w3ogcmmd::rcv_fields_from_ocean(), pdlib_w3profsmd::set_iobdp_pdlib(), pdlib_w3profsmd::set_iobpa_pdlib(), w3profsmd::setdepth(), w3ogcmmd::snd_fields_to_ocean(), w3parall::synchronize_ipgl_etc_array(), w3bounc(), w3bound(), w3profsmd::w3cflug(), w3pro3md::w3cflxy(), w3iosfmd::w3cprt(), w3exnc(), w3wavemd::w3gath(), w3psmcmd::w3gathsmc(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iosfmd::w3iosf(), w3pro3md::w3map3(), w3pro3md::w3mapt(), w3triamd::w3nestug(), w3wavemd::w3nmin(), w3iogomd::w3outg(), w3psmcmd::w3psmc(), w3wavemd::w3scat(), w3psmcmd::w3scatsmc(), w3setg(), w3updtmd::w3ucur(), w3updtmd::w3uic1(), w3updtmd::w3uic5(), w3updtmd::w3uice(), w3updtmd::w3uini(), w3updtmd::w3ulev(), w3uprstr(), w3updtmd::w3urho(), w3updtmd::w3utau(), w3updtmd::w3utrn(), w3updtmd::w3uwnd(), w3wavemd::w3wave(), w3pro1md::w3xyp1(), w3pro2md::w3xyp2(), w3pro3md::w3xyp3(), w3profsmd::w3xypfsfct2(), w3profsmd::w3xypfsn2(), w3profsmd::w3xypfsnimp(), w3profsmd::w3xypfspsi2(), w3profsmd::w3xypug(), wmgridmd::wmgeql(), wmgridmd::wmghgh(), wmgridmd::wmglow(), and wmgridmd::wmsmceql().

◆ mapst2

◆ mapsta

integer, dimension(:,:), pointer w3gdatmd::mapsta

Definition at line 1163 of file w3gdatmd.F90.

1163  INTEGER, POINTER :: MAPSTA(:,:), MAPST2(:,:), &
1164  MAPFS(:,:), MAPSF(:,:)

Referenced by pdlib_w3profsmd::block_solver_init(), w3iogomd::calc_wbt(), pdlib_w3profsmd::calcarray_jacobi(), pdlib_w3profsmd::calcarray_jacobi2(), pdlib_w3profsmd::calcarray_jacobi3(), pdlib_w3profsmd::calcarray_jacobi4(), pdlib_w3profsmd::calcarray_jacobi_source_1(), pdlib_w3profsmd::calcarray_jacobi_source_2(), pdlib_w3profsmd::calcarray_jacobi_spectral_2(), pdlib_w3profsmd::calcarray_jacobi_vec(), w3oacpmd::cpl_oasis_define(), w3oacpmd::cpl_oasis_grid(), w3wavset::differentiate_xydir_mapsta(), w3wavset::differentiate_xydir_native(), wmesmfmd::fieldindex(), w3snl5md::insnl5(), w3smcomd::mapsta_smc(), pdlib_w3profsmd::pdlib_init(), pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), pdlib_w3profsmd::pdlib_mapsta_init(), pdlib_w3profsmd::set_iobdp_pdlib(), pdlib_w3profsmd::set_iobpa_pdlib(), w3triamd::set_ug_iobp(), pdlib_w3profsmd::set_ug_iobp_pdlib_init(), w3profsmd::setdepth(), w3psmcmd::smcdcxy(), w3psmcmd::smcdhxy(), w3ogcmmd::snd_fields_to_ocean(), w3wavset::trig_compute_lh_stress(), w3triamd::ug_gradients(), w3bounc(), w3bound(), w3iosfmd::w3cprt(), w3updtmd::w3dzxy(), w3exnc(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iopomd::w3iope(), w3iopomd::w3iopp(), w3iorsmd::w3iors(), w3iotrmd::w3iotr(), w3pro2md::w3map2(), w3pro3md::w3map3(), w3triamd::w3nestug(), w3iogomd::w3outg(), w3setg(), w3setref(), w3updtmd::w3uice(), w3updtmd::w3ulev(), w3uprstr(), w3updtmd::w3utrn(), w3wavemd::w3wave(), wmgridmd::wmgeql(), wmgridmd::wmghgh(), wmgridmd::wmglow(), wminitmd::wminit(), wminitmd::wminitnml(), wmiopomd::wmiopp(), wmgridmd::wmsmceql(), and wmwavemd::wmwave().

◆ mapsta_loc

integer, dimension(:), pointer w3gdatmd::mapsta_loc

Definition at line 1115 of file w3gdatmd.F90.

1115  INTEGER, POINTER :: MAPSTA_LOC(:)

Referenced by pdlib_w3profsmd::pdlib_mapsta_init().

◆ mapth

integer, dimension(:), pointer w3gdatmd::mapth

◆ mapwn

◆ maxx

real, pointer w3gdatmd::maxx

Definition at line 1133 of file w3gdatmd.F90.

1133  REAL,POINTER :: MAXX, MAXY, DXYMAX

Referenced by w3triamd::coordmax(), w3iopomd::w3iopp(), w3iotrmd::w3iotr(), w3setg(), and wmiopomd::wmiopp().

◆ maxy

real, pointer w3gdatmd::maxy

◆ mpars

type(mpar), dimension(:), allocatable, target w3gdatmd::mpars

Definition at line 1090 of file w3gdatmd.F90.

1090  TYPE(MPAR), TARGET, ALLOCATABLE :: MPARS(:)

Referenced by w3snl3md::insnl3(), w3snlsmd::insnls(), w3dims(), w3nmod(), and w3setg().

◆ mrfct

◆ narc

◆ nauxgr

◆ nbac

integer, pointer w3gdatmd::nbac

◆ nbedge

integer, pointer w3gdatmd::nbedge

Definition at line 1104 of file w3gdatmd.F90.

1104  INTEGER, POINTER :: NBEDGE

Referenced by w3wavset::fd_wave_setup_compute_system(), and w3setg().

◆ nbgl

integer, pointer w3gdatmd::nbgl

Definition at line 1168 of file w3gdatmd.F90.

Referenced by w3iogrmd::w3iogr(), w3setg(), and w3wavemd::w3wave().

◆ nbnd_map

integer, pointer w3gdatmd::nbnd_map

Definition at line 1113 of file w3gdatmd.F90.

1113  INTEGER, POINTER :: NBND_MAP

Referenced by pdlib_w3profsmd::pdlib_iobp_init(), pdlib_w3profsmd::pdlib_mapsta_init(), and pdlib_w3profsmd::pdlib_w3xypug().

◆ nbsmc

integer, pointer w3gdatmd::nbsmc

Definition at line 1168 of file w3gdatmd.F90.

Referenced by w3iogrmd::w3iogr(), w3setg(), wminitmd::wminit(), and wminitmd::wminitnml().

◆ ncel

◆ ndpths

integer, pointer w3gdatmd::ndpths

Definition at line 1351 of file w3gdatmd.F90.

Referenced by w3snl2md::insnl2(), and w3setg().

◆ ndtab

integer, parameter w3gdatmd::ndtab =2000

Definition at line 637 of file w3gdatmd.F90.

637  INTEGER, PARAMETER :: NDTAB=2000

Referenced by w3src4md::insin4(), w3dims(), and w3src4md::w3sds4().

◆ neigh

integer, dimension(:,:), pointer w3gdatmd::neigh

Definition at line 1105 of file w3gdatmd.F90.

Referenced by w3wavset::fd_compute_lh_stress(), and w3setg().

◆ nfrcut

integer, pointer w3gdatmd::nfrcut

Definition at line 1356 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ nfrmax

integer, pointer w3gdatmd::nfrmax

Definition at line 1356 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ nfrmin

integer, pointer w3gdatmd::nfrmin

Definition at line 1356 of file w3gdatmd.F90.

1356  INTEGER, POINTER :: NFRMIN, NFRMAX, NFRCUT, NTHMAX, &
1357  NTHEXP, NSPMIN, NSPMAX, NSPMX2, &
1358  NQA, SNLNQ

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ nfrx

integer, pointer w3gdatmd::nfrx

Definition at line 1376 of file w3gdatmd.F90.

Referenced by w3snlsmd::insnls(), w3setg(), and w3snlsmd::w3snls().

◆ nglo

integer, pointer w3gdatmd::nglo

◆ ngrids

◆ nic4

integer, parameter w3gdatmd::nic4 =16

Definition at line 622 of file w3gdatmd.F90.

622  INTEGER, PARAMETER :: NIC4=16 , nic42=5

Referenced by w3dimx(), and w3sic4md::w3sic4().

◆ nic42

integer, parameter w3gdatmd::nic42 =5

Definition at line 622 of file w3gdatmd.F90.

Referenced by w3dimx().

◆ nitersec1

integer, pointer w3gdatmd::nitersec1

Definition at line 1181 of file w3gdatmd.F90.

1181  INTEGER, POINTER :: NITERSEC1

Referenced by w3setg(), and w3wavemd::w3wave().

◆ nittin

integer pointer w3gdatmd::nittin

Definition at line 1281 of file w3gdatmd.F90.

1281  INTEGER, POINTER :: NITTIN

Referenced by w3flx2md::w3flx2(), w3flx3md::w3flx3(), w3setg(), and w3src2md::w3spr2().

◆ nk

integer, pointer w3gdatmd::nk

Definition at line 1230 of file w3gdatmd.F90.

1230  INTEGER, POINTER :: NK, NK2, NTH, NSPEC

Referenced by pdlib_w3profsmd::action_limiter_local(), pdlib_w3profsmd::apply_boundary_condition(), pdlib_w3profsmd::apply_boundary_condition_va(), pdlib_w3profsmd::block_solver_explicit_init(), pdlib_w3profsmd::block_solver_init(), w3srcemd::calc_fpi(), w3iogomd::calc_u3stokes(), w3iogomd::calc_wbt(), pdlib_w3profsmd::calcarray_jacobi(), pdlib_w3profsmd::calcarray_jacobi2(), pdlib_w3profsmd::calcarray_jacobi3(), pdlib_w3profsmd::calcarray_jacobi4(), pdlib_w3profsmd::calcarray_jacobi_source_1(), pdlib_w3profsmd::calcarray_jacobi_source_2(), pdlib_w3profsmd::calcarray_jacobi_spectral_1(), pdlib_w3profsmd::calcarray_jacobi_spectral_2(), pdlib_w3profsmd::calcarray_jacobi_vec(), pdlib_w3profsmd::check_array_integral_nx_r8_maxfunct(), pdlib_w3profsmd::compute_mean_param(), pdlib_w3profsmd::deallocate_pdlib_global(), pdlib_field_vec::do_output_exchanges(), pdlib_w3profsmd::ergout(), wmesmfmd::fieldindex(), pdlib_field_vec::get_array_size(), w3sic3md::ic3table_cheng(), w3sbs1md::insbs1(), w3src3md::insin3(), w3src4md::insin4(), w3sis2md::insis2(), w3snl1md::insnl1(), w3snl2md::insnl2(), w3snl3md::insnl3(), w3snl5md::insnl5(), w3snl1md::insnlgqm(), w3snlsmd::insnls(), pdlib_w3profsmd::jacobi_init(), w3dispmd::liu_forward_dispersion(), w3dispmd::liu_reverse_dispersion(), pdlib_w3profsmd::pdlib_explicit_block(), pdlib_w3profsmd::pdlib_init(), pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), pdlib_w3profsmd::pdlib_w3xypfsfct2(), pdlib_w3profsmd::pdlib_w3xypfsn2(), pdlib_w3profsmd::pdlib_w3xypfspsi2(), pdlib_w3profsmd::pdlib_w3xypug(), pdlib_w3profsmd::print_wn_statistic(), w3parall::prop_freq_shift(), w3parall::prop_freq_shift_m2(), w3parall::prop_refraction_pr1(), w3parall::prop_refraction_pr3(), w3partmd::ptmean(), w3partmd::ptnghb(), pdlib_w3profsmd::scal_integral_print_general(), w3iogomd::secondhh(), w3triamd::set_ug_iobp(), pdlib_w3profsmd::set_ug_iobp_pdlib_init(), w3srcemd::sign_vsd_patankar_ww3(), w3srcemd::sign_vsd_semi_implicit_ww3(), w3iogomd::skewness(), w3psmcmd::smcgtcrfr(), w3psmcmd::smckuno2(), w3src6md::tau_wave_atmos(), w3canomd::w3add2ndorder(), w3gig1md::w3addig(), w3bounc(), w3bound(), w3profsmd::w3cflug(), w3pro3md::w3cflxy(), w3iosfmd::w3cprt(), w3crnc(), w3adatmd::w3dima(), w3dims(), w3adatmd::w3dmnl(), w3exgi(), w3exnc(), w3fld1md::w3fld1(), w3fld2md::w3fld2(), w3sic3md::w3ic3wncg_cheng(), w3sic3md::w3ic3wncg_v1(), w3sic5md::w3ic5wncg(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iogrmd::w3iogr(), w3iopomd::w3iope(), w3iopomd::w3iopo(), w3iopomd::w3iopon_read(), w3iopomd::w3iopon_write(), w3iopomd::w3iopp(), w3iorsmd::w3iors(), w3iotrmd::w3iotr(), w3psmcmd::w3krtn(), w3pro1md::w3ktp1(), w3pro2md::w3ktp2(), w3pro3md::w3ktp3(), w3pro2md::w3map2(), w3pro3md::w3map3(), w3initmd::w3mpio(), w3ounp(), w3partmd::w3part(), w3psmcmd::w3psmc(), w3sis2md::w3rpwnice(), w3sbs1md::w3sbs1(), w3sbt1md::w3sbt1(), w3sbt4md::w3sbt4(), w3sbt8md::w3sbt8(), w3sbt9md::w3sbt9(), w3sdb1md::w3sdb1(), w3src1md::w3sds1(), w3src2md::w3sds2(), w3src3md::w3sds3(), w3src4md::w3sds4(), w3src6md::w3sds6(), w3setg(), w3sic1md::w3sic1(), w3sic2md::w3sic2(), w3sic3md::w3sic3(), w3sic4md::w3sic4(), w3sic5md::w3sic5(), w3src1md::w3sin1(), w3src2md::w3sin2(), w3src3md::w3sin3(), w3src4md::w3sin4(), w3src6md::w3sin6(), w3sis1md::w3sis1(), w3sis2md::w3sis2(), w3sln1md::w3sln1(), w3snl1md::w3snl1(), w3snl2md::w3snl2(), w3snl3md::w3snl3(), w3snl4md::w3snl4(), w3snl5md::w3snl5(), w3snl1md::w3snlgqm(), w3snlsmd::w3snls(), w3src0md::w3spr0(), w3src1md::w3spr1(), w3src2md::w3spr2(), w3src3md::w3spr3(), w3src4md::w3spr4(), w3src6md::w3spr6(), w3srcemd::w3srce(), w3ref1md::w3sref(), w3str1md::w3str1(), w3swldmd::w3swl4(), w3swldmd::w3swl6(), w3updtmd::w3ubpt(), w3updtmd::w3uini(), w3updtmd::w3ulev(), w3uprstr(), w3wavemd::w3wave(), w3wdasmd::w3wdas(), w3adatmd::w3xdma(), w3pro1md::w3xyp1(), w3pro2md::w3xyp2(), w3pro3md::w3xyp3(), w3profsmd::w3xypfsfct2(), w3profsmd::w3xypfsn2(), w3profsmd::w3xypfsnimp(), w3profsmd::w3xypfspsi2(), w3profsmd::w3xypug(), wmgridmd::wmglow(), wminitmd::wminit(), wminitmd::wminitnml(), wminiomd::wmiobg(), wminiomd::wmiobs(), wminiomd::wmioeg(), wminiomd::wmiohg(), wmiopomd::wmiopo(), and pdlib_w3profsmd::write_var_to_text_file().

◆ nk2

◆ nkd

integer, parameter w3gdatmd::nkd =1300

Definition at line 636 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3dims(), and w3src4md::w3sds4().

◆ nkhs

integer, parameter w3gdatmd::nkhs =2000

Definition at line 636 of file w3gdatmd.F90.

636  INTEGER, PARAMETER :: NKHS=2000, nkd=1300

Referenced by w3src4md::insin4(), w3dims(), and w3src4md::w3sds4().

◆ nltail

real pointer w3gdatmd::nltail

Definition at line 1346 of file w3gdatmd.F90.

1346  REAL, POINTER :: NLTAIL, GQTHRSAT, GQTHRCOU, GQAMP(:)

Referenced by w3snl2md::insnl2(), w3snl1md::insnlgqm(), and w3setg().

◆ nlvcel

integer, dimension(:), pointer w3gdatmd::nlvcel

Definition at line 1169 of file w3gdatmd.F90.

1169  INTEGER, POINTER :: NLvCel(:), NLvUFc(:), NLvVFc(:)

Referenced by w3psmcmd::w3psmc(), and w3setg().

◆ nlvufc

integer, dimension(:), pointer w3gdatmd::nlvufc

Definition at line 1169 of file w3gdatmd.F90.

Referenced by w3psmcmd::w3psmc(), and w3setg().

◆ nlvvfc

integer, dimension(:), pointer w3gdatmd::nlvvfc

Definition at line 1169 of file w3gdatmd.F90.

Referenced by w3psmcmd::w3psmc(), and w3setg().

◆ nnz

◆ nqa

integer, pointer w3gdatmd::nqa

Definition at line 1356 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ nrlv

integer, pointer w3gdatmd::nrlv

◆ nsea

integer, pointer w3gdatmd::nsea

Definition at line 1097 of file w3gdatmd.F90.

Referenced by pdlib_w3profsmd::all_va_integral_print(), w3oacpmd::cpl_oasis_define(), w3oacpmd::cpl_oasis_grid(), pdlib_field_vec::do_output_exchanges(), w3wavset::fd_collect_sxx_xy_yy(), w3wavset::fd_compute_lh_stress(), w3wavset::fd_wave_setup_apply_fct(), w3wavset::fd_wave_setup_apply_precond(), w3wavset::fd_wave_setup_computation(), w3wavset::fd_wave_setup_compute_system(), w3smcomd::mapsta_smc(), pdlib_w3profsmd::pdlib_explicit_block(), pdlib_w3profsmd::pdlib_init(), pdlib_w3profsmd::pdlib_iobp_init(), pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), pdlib_w3profsmd::pdlib_mapsta_init(), pdlib_w3profsmd::pdlib_w3xypfsfct2(), pdlib_w3profsmd::pdlib_w3xypfsn2(), pdlib_w3profsmd::pdlib_w3xypfspsi2(), w3wavset::preparation_fd_scheme(), w3agcmmd::rcv_fields_from_atmos(), w3igcmmd::rcv_fields_from_ice(), w3ogcmmd::rcv_fields_from_ocean(), w3triamd::set_ug_iobp(), pdlib_w3profsmd::set_ug_iobp_pdlib_init(), w3parall::set_up_nseal_nsealm(), w3smcomd::smc_interp(), w3psmcmd::smcaverg(), w3psmcmd::smcdcxy(), w3psmcmd::smcdhxy(), w3psmcmd::smcgradn(), w3psmcmd::smcxuno2r(), w3psmcmd::smcxuno3r(), w3psmcmd::smcyuno2r(), w3psmcmd::smcyuno3r(), w3agcmmd::snd_fields_to_atmos(), w3igcmmd::snd_fields_to_ice(), w3parall::synchronize_global_array(), w3parall::synchronize_ipgl_etc_array(), w3wavset::trig_wave_setup_computation(), w3triamd::ug_gradients(), pdlib_field_vec::unst_pdlib_read_from_file(), pdlib_field_vec::unst_pdlib_write_to_file(), w3bounc(), w3bound(), w3profsmd::w3cflug(), w3pro3md::w3cflxy(), w3iosfmd::w3cprt(), w3adatmd::w3dima(), w3idatmd::w3dimi(), w3wdatmd::w3dimw(), w3dimx(), w3adatmd::w3dmnl(), w3updtmd::w3dzxy(), w3wavemd::w3gath(), w3psmcmd::w3gathsmc(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iogrmd::w3iogr(), w3iopomd::w3iope(), w3iorsmd::w3iors(), w3iosfmd::w3iosf(), w3iotrmd::w3iotr(), w3pro2md::w3map2(), w3pro3md::w3map3(), w3pro3md::w3mapt(), w3initmd::w3mpii(), w3initmd::w3mpio(), w3wavemd::w3nmin(), w3psmcmd::w3psmc(), w3wavemd::w3scat(), w3psmcmd::w3scatsmc(), w3setg(), w3updtmd::w3ucur(), w3updtmd::w3uic1(), w3updtmd::w3uic5(), w3updtmd::w3uice(), w3updtmd::w3uini(), w3updtmd::w3ulev(), w3uprstr(), w3updtmd::w3urho(), w3updtmd::w3utau(), w3updtmd::w3utrn(), w3updtmd::w3uwnd(), w3wdasmd::w3wdas(), w3adatmd::w3xdma(), w3pro1md::w3xyp1(), w3pro2md::w3xyp2(), w3pro3md::w3xyp3(), w3profsmd::w3xypug(), w3wavset::wave_setup_computation(), wmgridmd::wmgeql(), wmgridmd::wmghgh(), wmgridmd::wmglow(), wminitmd::wminit(), wminitmd::wminitnml(), wmgridmd::wmsmceql(), and wmupdtmd::wmupd1().

◆ nseal

integer, pointer w3gdatmd::nseal

Definition at line 1097 of file w3gdatmd.F90.

Referenced by pdlib_w3profsmd::all_field_integral_print(), pdlib_w3profsmd::all_va_integral_print(), pdlib_w3profsmd::all_vaold_integral_print(), pdlib_w3profsmd::apply_boundary_condition(), pdlib_w3profsmd::apply_boundary_condition_va(), pdlib_w3profsmd::block_solver_init(), w3iogomd::calc_u3stokes(), w3iogomd::calc_wbt(), pdlib_w3profsmd::calcarray_jacobi(), pdlib_w3profsmd::calcarray_jacobi2(), pdlib_w3profsmd::calcarray_jacobi3(), pdlib_w3profsmd::calcarray_jacobi4(), pdlib_w3profsmd::calcarray_jacobi_source_1(), pdlib_w3profsmd::calcarray_jacobi_source_2(), pdlib_w3profsmd::calcarray_jacobi_spectral_1(), pdlib_w3profsmd::calcarray_jacobi_spectral_2(), pdlib_w3profsmd::calcarray_jacobi_vec(), pdlib_w3profsmd::check_array_integral_nx_r8_maxfunct(), w3oacpmd::cpl_oasis_define(), wmesmfmd::createexpmesh(), pdlib_w3profsmd::deallocate_pdlib_global(), pdlib_field_vec::do_output_exchanges(), pdlib_w3profsmd::ergout(), w3wavset::fd_collect_sxx_xy_yy(), w3wavset::fd_wave_setup_computation(), wmesmfmd::fieldindex(), pdlib_w3profsmd::jacobi_init(), pdlib_w3profsmd::pdlib_explicit_block(), pdlib_w3profsmd::pdlib_init(), pdlib_w3profsmd::pdlib_iobp_init(), pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), pdlib_w3profsmd::pdlib_mapsta_init(), pdlib_w3profsmd::pdlib_w3xypfsfct2(), pdlib_w3profsmd::pdlib_w3xypfsn2(), pdlib_w3profsmd::pdlib_w3xypfspsi2(), pdlib_w3profsmd::pdlib_w3xypug(), pdlib_w3profsmd::print_wn_statistic(), w3agcmmd::rcv_fields_from_atmos(), w3igcmmd::rcv_fields_from_ice(), w3ogcmmd::rcv_fields_from_ocean(), pdlib_w3profsmd::scal_integral_print_general(), pdlib_w3profsmd::scal_integral_print_r4(), pdlib_w3profsmd::scal_integral_print_r8(), pdlib_w3profsmd::set_iobdp_pdlib(), pdlib_w3profsmd::set_iobpa_pdlib(), w3profsmd::setdepth(), w3iogomd::skewness(), w3agcmmd::snd_fields_to_atmos(), w3igcmmd::snd_fields_to_ice(), w3ogcmmd::snd_fields_to_ocean(), w3parall::synchronize_global_array(), w3wavset::trig_compute_lh_stress(), w3wavset::trig_set_meanvalue_to_zero(), w3wavset::trig_wave_setup_apply_fct(), w3wavset::trig_wave_setup_computation(), w3wavset::trig_wave_setup_scalar_prod(), w3wavset::trig_wave_setup_solve_poisson_neumann_dir(), w3triamd::ug_gradients(), pdlib_field_vec::unst_pdlib_read_from_file(), pdlib_field_vec::unst_pdlib_write_to_file(), w3iosfmd::w3cprt(), w3adatmd::w3dima(), w3wdatmd::w3dimw(), w3adatmd::w3dmnl(), w3wavemd::w3gath(), w3psmcmd::w3gathsmc(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iopomd::w3iope(), w3iorsmd::w3iors(), w3iosfmd::w3iosf(), w3iotrmd::w3iotr(), w3wavemd::w3scat(), w3psmcmd::w3scatsmc(), w3setg(), w3updtmd::w3uini(), w3updtmd::w3ulev(), w3uprstr(), w3wavemd::w3wave(), w3wdasmd::w3wdas(), w3adatmd::w3xdma(), w3wavset::wave_setup_computation(), wminitmd::wminit(), wminitmd::wminitnml(), and pdlib_w3profsmd::write_var_to_text_file().

◆ nspec

integer, pointer w3gdatmd::nspec

Definition at line 1230 of file w3gdatmd.F90.

Referenced by pdlib_w3profsmd::action_limiter_local(), pdlib_w3profsmd::all_field_integral_print(), pdlib_w3profsmd::all_va_integral_print(), pdlib_w3profsmd::all_vaold_integral_print(), pdlib_w3profsmd::apply_boundary_condition(), pdlib_w3profsmd::apply_boundary_condition_va(), pdlib_w3profsmd::block_solver_init(), w3srcemd::calc_fpi(), pdlib_w3profsmd::calcarray_jacobi(), pdlib_w3profsmd::calcarray_jacobi2(), pdlib_w3profsmd::calcarray_jacobi3(), pdlib_w3profsmd::calcarray_jacobi4(), pdlib_w3profsmd::calcarray_jacobi_source_1(), pdlib_w3profsmd::calcarray_jacobi_source_2(), pdlib_w3profsmd::calcarray_jacobi_spectral_1(), pdlib_w3profsmd::calcarray_jacobi_spectral_2(), pdlib_w3profsmd::calcarray_jacobi_vec(), pdlib_w3profsmd::check_array_integral_nx_r8(), pdlib_w3profsmd::check_array_integral_nx_r8_maxfunct(), pdlib_w3profsmd::deallocate_pdlib_global(), pdlib_field_vec::do_output_exchanges(), pdlib_w3profsmd::ergout(), w3sbs1md::insbs1(), w3snl1md::insnl1(), pdlib_w3profsmd::jacobi_init(), pdlib_w3profsmd::pdlib_explicit_block(), pdlib_w3profsmd::pdlib_init(), pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), pdlib_w3profsmd::printtotaloffcontrib(), w3parall::prop_freq_shift(), w3parall::prop_freq_shift_m2(), w3parall::prop_refraction_pr1(), w3parall::prop_refraction_pr3(), w3partmd::pt_fld(), w3partmd::ptmean(), w3partmd::ptnghb(), w3partmd::ptsort(), pdlib_w3profsmd::scal_integral_print_general(), w3srcemd::sign_vsd_patankar_ww3(), w3srcemd::sign_vsd_semi_implicit_ww3(), w3src6md::tau_wave_atmos(), pdlib_field_vec::unst_pdlib_read_from_file(), pdlib_field_vec::unst_pdlib_write_to_file(), w3canomd::w3add2ndorder(), w3gig1md::w3addig(), w3adatmd::w3dima(), w3dims(), w3wdatmd::w3dimw(), w3adatmd::w3dmnl(), w3odatmd::w3dmo2(), w3odatmd::w3dmo5(), w3exgi(), w3fld1md::w3fld1(), w3fld2md::w3fld2(), w3wavemd::w3gath(), w3psmcmd::w3gathsmc(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iopomd::w3iope(), w3iopomd::w3iopo(), w3iopomd::w3iopon_read(), w3iopomd::w3iopon_write(), w3iopomd::w3iopp(), w3iorsmd::w3iors(), w3iotrmd::w3iotr(), w3psmcmd::w3krtn(), w3pro1md::w3ktp1(), w3pro2md::w3ktp2(), w3pro3md::w3ktp3(), w3pro1md::w3map1(), w3pro2md::w3map2(), w3pro3md::w3map3(), w3initmd::w3mpii(), w3initmd::w3mpio(), w3initmd::w3mpip(), w3partmd::w3part(), w3sbs1md::w3sbs1(), w3sbt1md::w3sbt1(), w3sbt4md::w3sbt4(), w3sbt8md::w3sbt8(), w3sbt9md::w3sbt9(), w3wavemd::w3scat(), w3psmcmd::w3scatsmc(), w3sdb1md::w3sdb1(), w3src1md::w3sds1(), w3src3md::w3sds3(), w3src4md::w3sds4(), w3src6md::w3sds6(), w3setg(), w3sic1md::w3sic1(), w3sic2md::w3sic2(), w3sic3md::w3sic3(), w3sic4md::w3sic4(), w3sic5md::w3sic5(), w3src1md::w3sin1(), w3src2md::w3sin2(), w3src3md::w3sin3(), w3src4md::w3sin4(), w3src6md::w3sin6(), w3sis1md::w3sis1(), w3sis2md::w3sis2(), w3snl1md::w3snl1(), w3snl5md::w3snl5(), w3src3md::w3spr3(), w3src4md::w3spr4(), w3srcemd::w3srce(), w3ref1md::w3sref(), w3str1md::w3str1(), w3swldmd::w3swl4(), w3swldmd::w3swl6(), w3updtmd::w3ubpt(), w3updtmd::w3uice(), w3updtmd::w3ulev(), w3adatmd::w3xdma(), wminitmd::wminit(), wminitmd::wminitnml(), wminiomd::wmiobg(), wminiomd::wmiobs(), wminiomd::wmioeg(), wminiomd::wmioes(), wminiomd::wmiohg(), wminiomd::wmiohs(), wmiopomd::wmiopo(), and pdlib_w3profsmd::write_var_to_text_file().

◆ nsph

integer, pointer w3gdatmd::nsph

Definition at line 1376 of file w3gdatmd.F90.

Referenced by w3snlsmd::insnls(), w3setg(), and w3snlsmd::w3snls().

◆ nspl

integer, pointer w3gdatmd::nspl

Definition at line 1376 of file w3gdatmd.F90.

Referenced by w3snlsmd::insnls(), w3setg(), and w3snlsmd::w3snls().

◆ nspmax

integer, pointer w3gdatmd::nspmax

Definition at line 1356 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ nspmin

integer, pointer w3gdatmd::nspmin

Definition at line 1356 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ nspmx2

integer, pointer w3gdatmd::nspmx2

Definition at line 1356 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ nth

integer, pointer w3gdatmd::nth

Definition at line 1230 of file w3gdatmd.F90.

Referenced by pdlib_w3profsmd::action_limiter_local(), w3fld1md::appendtail(), pdlib_w3profsmd::apply_boundary_condition(), pdlib_w3profsmd::apply_boundary_condition_va(), pdlib_w3profsmd::block_solver_explicit_init(), pdlib_w3profsmd::block_solver_init(), w3srcemd::calc_fpi(), w3iogomd::calc_u3stokes(), w3iogomd::calc_wbt(), pdlib_w3profsmd::calcarray_jacobi(), pdlib_w3profsmd::calcarray_jacobi2(), pdlib_w3profsmd::calcarray_jacobi3(), pdlib_w3profsmd::calcarray_jacobi4(), pdlib_w3profsmd::calcarray_jacobi_source_1(), pdlib_w3profsmd::calcarray_jacobi_source_2(), pdlib_w3profsmd::calcarray_jacobi_spectral_1(), pdlib_w3profsmd::calcarray_jacobi_spectral_2(), pdlib_w3profsmd::calcarray_jacobi_vec(), pdlib_w3profsmd::check_array_integral_nx_r8_maxfunct(), pdlib_w3profsmd::compute_mean_param(), pdlib_w3profsmd::deallocate_pdlib_global(), pdlib_w3profsmd::ergout(), wmesmfmd::fieldindex(), w3sbs1md::insbs1(), w3src4md::insin4(), w3sis2md::insis2(), w3snl1md::insnl1(), w3snl2md::insnl2(), w3snl3md::insnl3(), w3snl5md::insnl5(), w3snl1md::insnlgqm(), w3snlsmd::insnls(), pdlib_w3profsmd::jacobi_init(), pdlib_w3profsmd::pdlib_explicit_block(), pdlib_w3profsmd::pdlib_init(), pdlib_w3profsmd::pdlib_iobp_init(), pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), pdlib_w3profsmd::pdlib_mapsta_init(), pdlib_w3profsmd::pdlib_w3xypfsfct2(), pdlib_w3profsmd::pdlib_w3xypfsn2(), pdlib_w3profsmd::pdlib_w3xypfspsi2(), pdlib_w3profsmd::pdlib_w3xypug(), w3parall::prop_freq_shift(), w3parall::prop_freq_shift_m2(), w3parall::prop_refraction_pr1(), w3parall::prop_refraction_pr3(), w3partmd::ptmean(), w3partmd::ptnghb(), pdlib_w3profsmd::scal_integral_print_general(), w3iogomd::secondhh(), w3triamd::set_ug_iobp(), pdlib_w3profsmd::set_ug_iobp_pdlib_init(), w3srcemd::sign_vsd_patankar_ww3(), w3srcemd::sign_vsd_semi_implicit_ww3(), w3iogomd::skewness(), w3psmcmd::smcdhxy(), w3psmcmd::smcgtcrfr(), w3psmcmd::smckuno2(), w3src6md::tau_wave_atmos(), w3canomd::w3add2ndorder(), w3gig1md::w3addig(), w3bounc(), w3bound(), w3profsmd::w3cflug(), w3pro3md::w3cflxy(), w3iosfmd::w3cprt(), w3crnc(), w3adatmd::w3dima(), w3dims(), w3dimug(), w3adatmd::w3dmnl(), w3fld1md::w3fld1(), w3fld2md::w3fld2(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iogrmd::w3iogr(), w3iopomd::w3iope(), w3iopomd::w3iopo(), w3iopomd::w3iopon_read(), w3iopomd::w3iopon_write(), w3iopomd::w3iopp(), w3iorsmd::w3iors(), w3iotrmd::w3iotr(), w3psmcmd::w3krtn(), w3pro1md::w3ktp1(), w3pro2md::w3ktp2(), w3pro3md::w3ktp3(), w3pro1md::w3map1(), w3pro2md::w3map2(), w3pro3md::w3map3(), w3ounp(), w3partmd::w3part(), w3psmcmd::w3psmc(), w3sbs1md::w3sbs1(), w3sbt1md::w3sbt1(), w3sbt4md::w3sbt4(), w3sdb1md::w3sdb1(), w3src1md::w3sds1(), w3src2md::w3sds2(), w3src3md::w3sds3(), w3src4md::w3sds4(), w3src6md::w3sds6(), w3setg(), w3setref(), w3sic1md::w3sic1(), w3sic2md::w3sic2(), w3sic3md::w3sic3(), w3sic4md::w3sic4(), w3sic5md::w3sic5(), w3src1md::w3sin1(), w3src2md::w3sin2(), w3src3md::w3sin3(), w3src4md::w3sin4(), w3src6md::w3sin6(), w3sis1md::w3sis1(), w3sis2md::w3sis2(), w3sln1md::w3sln1(), w3snl1md::w3snl1(), w3snl2md::w3snl2(), w3snl3md::w3snl3(), w3snl4md::w3snl4(), w3snl5md::w3snl5(), w3snl1md::w3snlgqm(), w3snlsmd::w3snls(), w3src0md::w3spr0(), w3src1md::w3spr1(), w3src2md::w3spr2(), w3src3md::w3spr3(), w3src4md::w3spr4(), w3src6md::w3spr6(), w3srcemd::w3srce(), w3ref1md::w3sref(), w3str1md::w3str1(), w3swldmd::w3swl4(), w3swldmd::w3swl6(), w3updtmd::w3ubpt(), w3updtmd::w3uini(), w3updtmd::w3ulev(), w3uprstr(), w3wavemd::w3wave(), w3wdasmd::w3wdas(), w3adatmd::w3xdma(), w3pro1md::w3xyp1(), w3pro2md::w3xyp2(), w3pro3md::w3xyp3(), w3profsmd::w3xypfsfct2(), w3profsmd::w3xypfsn2(), w3profsmd::w3xypfsnimp(), w3profsmd::w3xypfspsi2(), w3profsmd::w3xypug(), wminitmd::wminit(), wminitmd::wminitnml(), wminiomd::wmiobg(), wminiomd::wmiobs(), wminiomd::wmioeg(), wminiomd::wmioes(), wminiomd::wmiohg(), wminiomd::wmiohs(), wmiopomd::wmiopo(), and pdlib_w3profsmd::write_var_to_text_file().

◆ nthexp

integer, pointer w3gdatmd::nthexp

Definition at line 1356 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ nthmax

integer, pointer w3gdatmd::nthmax

Definition at line 1356 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ nthx

integer, pointer w3gdatmd::nthx

Definition at line 1376 of file w3gdatmd.F90.

1376  INTEGER, POINTER :: NTHX, NFRX, NSPL, NSPH

Referenced by w3snlsmd::insnls(), w3setg(), and w3snlsmd::w3snls().

◆ ntri

◆ nufc

◆ nvfc

◆ nx

integer, pointer w3gdatmd::nx

Definition at line 1097 of file w3gdatmd.F90.

1097  INTEGER, POINTER :: NX, NY, NSEA, NSEAL, TRFLAG

Referenced by pdlib_w3profsmd::all_va_integral_print(), pdlib_w3profsmd::block_solver_init(), pdlib_w3profsmd::check_array_integral_nx_r8_maxfunct(), w3oacpmd::cpl_oasis_define(), w3oacpmd::cpl_oasis_grid(), wmesmfmd::createexpmesh(), pdlib_field_vec::do_output_exchanges(), w3wavset::fd_compute_lh_stress(), w3wavset::fd_set_meanvalue_to_zero(), w3wavset::fd_wave_setup_apply_fct(), w3wavset::fd_wave_setup_computation(), w3wavset::fd_wave_setup_compute_system(), w3wavset::fd_wave_setup_scalar_prod(), w3wavset::fd_wave_setup_solve_poisson_neumann_dir(), wmesmfmd::fieldindex(), w3triamd::get_boundary_status(), interp(), pdlib_w3profsmd::pdlib_init(), pdlib_w3profsmd::pdlib_iobp_init(), pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), pdlib_w3profsmd::pdlib_mapsta_init(), pdlib_w3profsmd::pdlib_w3xypfsfct2(), pdlib_w3profsmd::pdlib_w3xypfsn2(), pdlib_w3profsmd::pdlib_w3xypfspsi2(), pdlib_w3profsmd::pdlib_w3xypug(), w3wavset::preparation_fd_scheme(), w3agcmmd::rcv_fields_from_atmos(), w3igcmmd::rcv_fields_from_ice(), w3ogcmmd::rcv_fields_from_ocean(), w3triamd::readmsh(), w3triamd::readmshobc(), pdlib_w3profsmd::scal_integral_print_general(), pdlib_w3profsmd::set_iobdp_pdlib(), w3triamd::set_iobp(), pdlib_w3profsmd::set_iobpa_pdlib(), w3triamd::set_ug_iobp(), pdlib_w3profsmd::set_ug_iobp_pdlib_init(), w3profsmd::setdepth(), wmesmfmd::setexport(), w3smcomd::smc_interp(), w3psmcmd::smcdcxy(), w3psmcmd::smcdhxy(), w3parall::synchronize_global_array(), w3wavset::trig_set_meanvalue_to_zero(), w3wavset::trig_wave_setup_computation(), w3wavset::trig_wave_setup_scalar_prod(), w3triamd::ug_getopenboundary(), w3triamd::ug_gradients(), pdlib_field_vec::unst_pdlib_write_to_file(), w3profsmd::w3cflug(), w3pro3md::w3cflxy(), w3adatmd::w3dima(), w3idatmd::w3dimi(), w3dimug(), w3adatmd::w3dmnl(), w3odatmd::w3dmo3(), w3odatmd::w3dmo5(), w3updtmd::w3dzxy(), w3wavemd::w3gath(), w3psmcmd::w3gathsmc(), w3gntx(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iogomd::w3iogo(), w3iogrmd::w3iogr(), w3iopomd::w3iope(), w3iopomd::w3iopp(), w3iorsmd::w3iors(), w3iotrmd::w3iotr(), w3pro1md::w3map1(), w3pro2md::w3map2(), w3pro3md::w3map3(), w3pro3md::w3mapt(), w3initmd::w3mpio(), w3initmd::w3mpip(), w3triamd::w3nestug(), w3wavemd::w3nmin(), w3prnc(), w3psmcmd::w3psmc(), w3sbs1(), w3wavemd::w3scat(), w3psmcmd::w3scatsmc(), w3setg(), w3updtmd::w3ucur(), w3updtmd::w3uice(), w3updtmd::w3uini(), w3updtmd::w3ulev(), w3uprstr(), w3updtmd::w3utrn(), w3updtmd::w3uwnd(), w3wavemd::w3wave(), w3wdasmd::w3wdas(), w3adatmd::w3xdma(), w3pro1md::w3xyp1(), w3pro2md::w3xyp2(), w3pro3md::w3xyp3(), w3profsmd::w3xypfsfct2(), w3profsmd::w3xypfsn2(), w3profsmd::w3xypfsnimp(), w3profsmd::w3xypfspsi2(), w3profsmd::w3xypug(), wmgridmd::wmgeql(), wmgridmd::wmghgh(), wmgridmd::wmglow(), wminitmd::wminit(), wminitmd::wminitnml(), wmiopomd::wmiopp(), wmupdtmd::wmupd1(), wmupdtmd::wmupds(), wmupdtmd::wmupdt(), wmupdtmd::wmupdv(), wmwavemd::wmwave(), and pdlib_w3profsmd::write_var_to_text_file().

◆ ny

integer, pointer w3gdatmd::ny

Definition at line 1097 of file w3gdatmd.F90.

Referenced by pdlib_w3profsmd::all_va_integral_print(), pdlib_w3profsmd::check_array_integral_nx_r8_maxfunct(), w3oacpmd::cpl_oasis_define(), w3oacpmd::cpl_oasis_grid(), wmesmfmd::createexpmesh(), w3wavset::fd_compute_lh_stress(), w3wavset::fd_wave_setup_compute_system(), wmesmfmd::fieldindex(), interp(), pdlib_w3profsmd::pdlib_w3xypug(), w3wavset::preparation_fd_scheme(), w3agcmmd::rcv_fields_from_atmos(), w3igcmmd::rcv_fields_from_ice(), w3ogcmmd::rcv_fields_from_ocean(), w3triamd::readmshobc(), pdlib_w3profsmd::scal_integral_print_general(), w3triamd::set_ug_iobp(), pdlib_w3profsmd::set_ug_iobp_pdlib_init(), wmesmfmd::setexport(), w3smcomd::smc_interp(), w3psmcmd::smcdcxy(), w3psmcmd::smcdhxy(), w3psmcmd::smcxuno2r(), w3psmcmd::smcxuno3r(), w3psmcmd::smcyuno2r(), w3psmcmd::smcyuno3r(), w3triamd::ug_getopenboundary(), pdlib_field_vec::unst_pdlib_write_to_file(), w3profsmd::w3cflug(), w3pro3md::w3cflxy(), w3adatmd::w3dima(), w3idatmd::w3dimi(), w3adatmd::w3dmnl(), w3odatmd::w3dmo3(), w3odatmd::w3dmo5(), w3updtmd::w3dzxy(), w3wavemd::w3gath(), w3psmcmd::w3gathsmc(), w3gntx(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iogomd::w3iogo(), w3iogrmd::w3iogr(), w3iopomd::w3iope(), w3iopomd::w3iopp(), w3iorsmd::w3iors(), w3iotrmd::w3iotr(), w3pro1md::w3map1(), w3pro2md::w3map2(), w3pro3md::w3map3(), w3pro3md::w3mapt(), w3initmd::w3mpip(), w3wavemd::w3nmin(), w3prnc(), w3psmcmd::w3psmc(), w3sbs1(), w3wavemd::w3scat(), w3psmcmd::w3scatsmc(), w3setg(), w3updtmd::w3ucur(), w3updtmd::w3uice(), w3updtmd::w3uini(), w3updtmd::w3ulev(), w3uprstr(), w3updtmd::w3utrn(), w3updtmd::w3uwnd(), w3wavemd::w3wave(), w3wdasmd::w3wdas(), w3adatmd::w3xdma(), w3pro1md::w3xyp1(), w3pro2md::w3xyp2(), w3pro3md::w3xyp3(), w3profsmd::w3xypug(), wmgridmd::wmgeql(), wmgridmd::wmghgh(), wmgridmd::wmglow(), wminitmd::wminit(), wminitmd::wminitnml(), wmiopomd::wmiopp(), wmupdtmd::wmupd1(), wmupdtmd::wmupds(), wmupdtmd::wmupdt(), wmupdtmd::wmupdv(), wmwavemd::wmwave(), and pdlib_w3profsmd::write_var_to_text_file().

◆ ofstab

real, pointer w3gdatmd::ofstab

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3setg(), and w3updtmd::w3uwnd().

◆ optioncall

integer w3gdatmd::optioncall = 3

Definition at line 1110 of file w3gdatmd.F90.

1110  INTEGER :: optionCall = 3 ! take care all other options are basically wrong

Referenced by pdlib_w3profsmd::calcarray_jacobi_source_1(), pdlib_w3profsmd::calcarray_jacobi_source_2(), pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), and w3srcemd::w3srce().

◆ p2msf

◆ pfmove

real, pointer w3gdatmd::pfmove

◆ pinit

logical, pointer w3gdatmd::pinit

Definition at line 1241 of file w3gdatmd.F90.

1241  LOGICAL, POINTER :: PINIT

Referenced by w3setg().

◆ polat

real, pointer w3gdatmd::polat

◆ polon

real, pointer w3gdatmd::polon

◆ pos_cell

◆ posi

integer, dimension(:,:), pointer w3gdatmd::posi

Definition at line 1124 of file w3gdatmd.F90.

Referenced by w3triamd::area_si(), w3setg(), and w3profsmd::w3xypfsnimp().

◆ qbi

real, dimension(:,:), pointer w3gdatmd::qbi

Definition at line 1323 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3src4md::w3sds4(), and w3setg().

◆ qi5dis

integer, pointer w3gdatmd::qi5dis

Definition at line 1372 of file w3gdatmd.F90.

1372  INTEGER, POINTER :: QI5DIS, QI5KEV, QI5IPL, QI5PMX

Referenced by w3snl5md::insnl5(), and w3setg().

◆ qi5ipl

integer, pointer w3gdatmd::qi5ipl

Definition at line 1372 of file w3gdatmd.F90.

Referenced by w3snl5md::insnl5(), and w3setg().

◆ qi5kev

integer, pointer w3gdatmd::qi5kev

Definition at line 1372 of file w3gdatmd.F90.

Referenced by w3snl5md::insnl5(), and w3setg().

◆ qi5nnz

integer(kind=8), pointer w3gdatmd::qi5nnz

Definition at line 1373 of file w3gdatmd.F90.

1373  INTEGER(KIND=8), POINTER:: QI5NNZ

Referenced by w3snl5md::insnl5(), w3wdatmd::w3dimw(), w3setg(), and w3snl5md::w3snl5().

◆ qi5pmx

integer, pointer w3gdatmd::qi5pmx

Definition at line 1372 of file w3gdatmd.F90.

Referenced by w3snl5md::insnl5(), w3setg(), and w3snl5md::w3snl5().

◆ qr5dpt

real, pointer w3gdatmd::qr5dpt

Definition at line 1371 of file w3gdatmd.F90.

1371  REAL, POINTER :: QR5DPT, QR5OML

Referenced by w3snl5md::insnl5(), w3setg(), and w3snl5md::w3snl5().

◆ qr5oml

real, pointer w3gdatmd::qr5oml

Definition at line 1371 of file w3gdatmd.F90.

Referenced by w3snl5md::insnl5(), and w3setg().

◆ qst1

integer, dimension(:,:,:), pointer w3gdatmd::qst1

Definition at line 1359 of file w3gdatmd.F90.

1359  INTEGER, POINTER :: QST1(:,:,:), QST4(:,:,:)

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ qst2

real, dimension(:,:,:), pointer w3gdatmd::qst2

Definition at line 1361 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ qst3

real, dimension(:,:,:), pointer w3gdatmd::qst3

Definition at line 1361 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ qst4

integer, dimension(:,:,:), pointer w3gdatmd::qst4

Definition at line 1359 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ qst5

real, dimension(:,:,:), pointer w3gdatmd::qst5

Definition at line 1361 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ qst6

real, dimension(:,:,:), pointer w3gdatmd::qst6

Definition at line 1361 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ reflc

real, dimension(:,:), pointer w3gdatmd::reflc

Definition at line 1101 of file w3gdatmd.F90.

1101  REAL, POINTER :: REFLC(:,:)

Referenced by w3setg(), w3setref(), and w3wavemd::w3wave().

◆ refld

integer, dimension(:,:), pointer w3gdatmd::refld

Definition at line 1102 of file w3gdatmd.F90.

1102  INTEGER, POINTER :: REFLD(:,:)

Referenced by w3setg(), w3setref(), and w3wavemd::w3wave().

◆ refpars

◆ refran

real, pointer w3gdatmd::refran

Definition at line 1263 of file w3gdatmd.F90.

Referenced by w3psmcmd::smcdhxy(), and w3setg().

◆ rlgtype

◆ rref

logical, dimension(:), pointer w3gdatmd::rref

Definition at line 1138 of file w3gdatmd.F90.

1138  LOGICAL, POINTER :: RREF(:)

Referenced by w3setg(), and w3setref().

◆ rstype

integer, pointer w3gdatmd::rstype

Definition at line 1095 of file w3gdatmd.F90.

1095  INTEGER, POINTER :: RSTYPE

Referenced by w3initmd::w3init(), w3iorsmd::w3iors(), w3setg(), w3uprstr(), and w3wavemd::w3wave().

◆ rwindc

real, pointer w3gdatmd::rwindc

Definition at line 1248 of file w3gdatmd.F90.

1248  REAL, POINTER :: RWINDC

Referenced by w3setg(), and w3updtmd::w3uwnd().

◆ satindices

integer, dimension(:,:), pointer w3gdatmd::satindices

Definition at line 1321 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3src4md::w3sds4(), and w3setg().

◆ satweights

real, dimension(:,:), pointer w3gdatmd::satweights

Definition at line 1323 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3src4md::w3sds4(), and w3setg().

◆ sbtc1

real, pointer w3gdatmd::sbtc1

Definition at line 1384 of file w3gdatmd.F90.

1384  REAL, POINTER :: SBTC1

Referenced by w3sbt1md::w3sbt1(), and w3setg().

◆ sbtcx

real, dimension(:), pointer w3gdatmd::sbtcx

Definition at line 1387 of file w3gdatmd.F90.

1387  REAL, POINTER :: SBTCX(:)

Referenced by w3sbt4md::w3sbt4(), and w3setg().

◆ sdbc1

real, pointer w3gdatmd::sdbc1

Definition at line 1393 of file w3gdatmd.F90.

1393  REAL, POINTER :: SDBC1, SDBC2

Referenced by w3sdb1md::w3sdb1(), and w3setg().

◆ sdbc2

real, pointer w3gdatmd::sdbc2

Definition at line 1393 of file w3gdatmd.F90.

Referenced by w3sdb1md::w3sdb1(), and w3setg().

◆ sdbsc

◆ sds6a1

real, pointer w3gdatmd::sds6a1

Definition at line 1335 of file w3gdatmd.F90.

Referenced by w3src6md::w3sds6(), and w3setg().

◆ sds6a2

real, pointer w3gdatmd::sds6a2

Definition at line 1335 of file w3gdatmd.F90.

Referenced by w3src6md::w3sds6(), and w3setg().

◆ sds6et

logical, pointer w3gdatmd::sds6et

Definition at line 1338 of file w3gdatmd.F90.

1338  LOGICAL, POINTER :: SDS6ET, SWL6S6, SWL6CSTB1

Referenced by w3src6md::w3sds6(), and w3setg().

◆ sds6p1

integer, pointer w3gdatmd::sds6p1

Definition at line 1337 of file w3gdatmd.F90.

1337  INTEGER, POINTER :: SDS6P1, SDS6P2

Referenced by w3src6md::w3sds6(), and w3setg().

◆ sds6p2

integer, pointer w3gdatmd::sds6p2

Definition at line 1337 of file w3gdatmd.F90.

Referenced by w3src6md::w3sds6(), and w3setg().

◆ sdsaln

real, pointer w3gdatmd::sdsaln

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ sdsc1

real, pointer w3gdatmd::sdsc1

Definition at line 1301 of file w3gdatmd.F90.

Referenced by w3src1md::w3sds1(), and w3setg().

◆ sed_d50

real, dimension(:), pointer w3gdatmd::sed_d50

Definition at line 1214 of file w3gdatmd.F90.

1214  REAL, POINTER :: SED_D50(:), SED_PSIC(:)

Referenced by w3setg(), and w3wavemd::w3wave().

◆ sed_psic

real, dimension(:), pointer w3gdatmd::sed_psic

Definition at line 1214 of file w3gdatmd.F90.

Referenced by w3setg(), and w3wavemd::w3wave().

◆ sgrds

type(sgrd), dimension(:), allocatable, target w3gdatmd::sgrds

◆ shstab

real, pointer w3gdatmd::shstab

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3setg(), and w3updtmd::w3uwnd().

◆ si

◆ sig

real, dimension(:), pointer w3gdatmd::sig

Definition at line 1234 of file w3gdatmd.F90.

Referenced by pdlib_w3profsmd::action_limiter_local(), w3srcemd::calc_fpi(), w3iogomd::calc_u3stokes(), w3iogomd::calc_wbt(), pdlib_w3profsmd::calcarray_jacobi_source_1(), pdlib_w3profsmd::calcarray_jacobi_source_2(), pdlib_w3profsmd::calcarray_jacobi_vec(), wmesmfmd::calcstokes3d(), pdlib_w3profsmd::compute_mean_param(), wmesmfmd::fieldindex(), w3sic3md::ic3table_cheng(), w3sbs1md::insbs1(), w3src3md::insin3(), w3src4md::insin4(), w3sis2md::insis2(), w3snl1md::insnl1(), w3snl2md::insnl2(), w3snl3md::insnl3(), w3snl5md::insnl5(), pdlib_w3profsmd::pdlib_explicit_block(), pdlib_w3profsmd::pdlib_init(), pdlib_w3profsmd::pdlib_jacobi_gauss_seidel_block(), pdlib_w3profsmd::pdlib_w3xypug(), w3parall::prop_freq_shift(), w3parall::prop_freq_shift_m2(), w3parall::prop_refraction_pr1(), w3parall::prop_refraction_pr3(), w3partmd::ptmean(), w3iogomd::secondhh(), w3iogomd::skewness(), w3canomd::w3add2ndorder(), w3gig1md::w3addig(), w3profsmd::w3cflug(), w3pro3md::w3cflxy(), w3iosfmd::w3cprt(), w3crnc(), w3exnc(), w3fld1md::w3fld1(), w3fld2md::w3fld2(), w3sic3md::w3ic3wncg_cheng(), w3sic3md::w3ic3wncg_v1(), w3sic5md::w3ic5wncg(), w3initmd::w3init(), w3iobcmd::w3iobc(), w3iopomd::w3iope(), w3iotrmd::w3iotr(), w3psmcmd::w3krtn(), w3pro1md::w3ktp1(), w3pro2md::w3ktp2(), w3pro3md::w3ktp3(), w3iogomd::w3outg(), w3partmd::w3part(), w3psmcmd::w3psmc(), w3sis2md::w3rpwnice(), w3sbs1md::w3sbs1(), w3sbt1md::w3sbt1(), w3sbt4md::w3sbt4(), w3sbt8md::w3sbt8(), w3sbt9md::w3sbt9(), w3sdb1md::w3sdb1(), w3src1md::w3sds1(), w3src2md::w3sds2(), w3src4md::w3sds4(), w3setg(), w3sic1md::w3sic1(), w3sic2md::w3sic2(), w3sic3md::w3sic3(), w3sic4md::w3sic4(), w3sic5md::w3sic5(), w3src1md::w3sin1(), w3src2md::w3sin2(), w3src3md::w3sin3(), w3src4md::w3sin4(), w3sis1md::w3sis1(), w3sis2md::w3sis2(), w3sln1md::w3sln1(), w3snl1md::w3snl1(), w3snl2md::w3snl2(), w3snl3md::w3snl3(), w3snl4md::w3snl4(), w3snl5md::w3snl5(), w3snl1md::w3snlgqm(), w3snlsmd::w3snls(), w3src0md::w3spr0(), w3src1md::w3spr1(), w3src2md::w3spr2(), w3src3md::w3spr3(), w3src4md::w3spr4(), w3src6md::w3spr6(), w3srcemd::w3srce(), w3ref1md::w3sref(), w3str1md::w3str1(), w3swldmd::w3swl6(), w3updtmd::w3uini(), w3updtmd::w3ulev(), w3uprstr(), w3wavemd::w3wave(), w3pro1md::w3xyp1(), w3pro2md::w3xyp2(), w3pro3md::w3xyp3(), w3profsmd::w3xypug(), wmgridmd::wmgeql(), and wmgridmd::wmghgh().

◆ sig2

◆ sin6a0

real, pointer w3gdatmd::sin6a0

Definition at line 1335 of file w3gdatmd.F90.

1335  REAL, POINTER :: SIN6A0, SDS6A1, SDS6A2, SWL6B1, &
1336  SIN6WS, SIN6FC

Referenced by w3setg(), and w3src6md::w3sin6().

◆ sin6fc

real, pointer w3gdatmd::sin6fc

Definition at line 1335 of file w3gdatmd.F90.

Referenced by w3setg().

◆ sin6ws

real, pointer w3gdatmd::sin6ws

Definition at line 1335 of file w3gdatmd.F90.

Referenced by w3src6md::w3sds6(), w3setg(), and w3src6md::w3sin6().

◆ sinc1

real, pointer w3gdatmd::sinc1

Definition at line 1301 of file w3gdatmd.F90.

1301  REAL, POINTER :: SINC1, SDSC1

Referenced by w3setg(), and w3src1md::w3sin1().

◆ sinit

logical, pointer w3gdatmd::sinit

Definition at line 1237 of file w3gdatmd.F90.

1237  LOGICAL, POINTER :: SINIT

Referenced by w3setg().

◆ sintailpar

real, dimension(:), pointer w3gdatmd::sintailpar

◆ slnc1

real, pointer w3gdatmd::slnc1

Definition at line 1295 of file w3gdatmd.F90.

1295  REAL, POINTER :: SLNC1, FSPM, FSHF

Referenced by w3setg(), and w3sln1md::w3sln1().

◆ smctype

◆ snlc1

real, pointer w3gdatmd::snlc1

Definition at line 1347 of file w3gdatmd.F90.

1347  REAL, POINTER :: SNLC1, LAM, KDCON, KDMN, &
1348  SNLS1, SNLS2, SNLS3

Referenced by w3setg(), and w3snl1md::w3snl1().

◆ snlcd

real, dimension(:), pointer w3gdatmd::snlcd

Definition at line 1361 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), and w3setg().

◆ snlcs

real, dimension(:), pointer w3gdatmd::snlcs

Definition at line 1361 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), and w3setg().

◆ snll

real, dimension(:), pointer w3gdatmd::snll

Definition at line 1361 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), and w3setg().

◆ snlm

real, dimension(:), pointer w3gdatmd::snlm

Definition at line 1361 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), and w3setg().

◆ snlmsc

real, pointer w3gdatmd::snlmsc

Definition at line 1360 of file w3gdatmd.F90.

1360  REAL, POINTER :: SNLMSC, SNLNSC, SNLSFD, SNLSFS

Referenced by w3setg(), and w3snl3md::w3snl3().

◆ snlnq

integer, pointer w3gdatmd::snlnq

Definition at line 1356 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), and w3setg().

◆ snlnsc

real, pointer w3gdatmd::snlnsc

Definition at line 1360 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl3md::w3snl3().

◆ snls1

real, pointer w3gdatmd::snls1

Definition at line 1347 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl1md::w3snl1().

◆ snls2

real, pointer w3gdatmd::snls2

Definition at line 1347 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl1md::w3snl1().

◆ snls3

real, pointer w3gdatmd::snls3

Definition at line 1347 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl1md::w3snl1().

◆ snlsfd

real, pointer w3gdatmd::snlsfd

Definition at line 1360 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl3md::w3snl3().

◆ snlsfs

real, pointer w3gdatmd::snlsfs

Definition at line 1360 of file w3gdatmd.F90.

Referenced by w3setg(), and w3snl3md::w3snl3().

◆ snlt

real, dimension(:), pointer w3gdatmd::snlt

Definition at line 1361 of file w3gdatmd.F90.

Referenced by w3snl3md::insnl3(), and w3setg().

◆ snsst

real, dimension(:,:), pointer w3gdatmd::snsst

Definition at line 1377 of file w3gdatmd.F90.

Referenced by w3snlsmd::insnls(), w3setg(), and w3snlsmd::w3snls().

◆ solverthr_stp

real(8), pointer w3gdatmd::solverthr_stp

Definition at line 1408 of file w3gdatmd.F90.

1408  REAL(8), POINTER :: SOLVERTHR_STP

Referenced by w3wavset::trig_wave_setup_solve_poisson_neumann_dir(), and w3setg().

◆ spcbac

real, dimension(:,:), pointer w3gdatmd::spcbac

Definition at line 1204 of file w3gdatmd.F90.

1204  REAL , POINTER :: SPCBAC(:,:), ANGARC(:)

Referenced by w3setg(), and w3wavemd::w3wave().

◆ ssdsabk

real, pointer w3gdatmd::ssdsabk

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), and w3setg().

◆ ssdsbck

real, pointer w3gdatmd::ssdsbck

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3src4md::w3sds4(), and w3setg().

◆ ssdsbint

real, pointer w3gdatmd::ssdsbint

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), and w3setg().

◆ ssdsbm

real, dimension(:), pointer w3gdatmd::ssdsbm

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3src4md::w3sds4(), and w3setg().

◆ ssdsbr

real pointer w3gdatmd::ssdsbr

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3src4md::w3sds4(), and w3setg().

◆ ssdsbrf1

real, pointer w3gdatmd::ssdsbrf1

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3src4md::w3sds4(), and w3setg().

◆ ssdsbrf2

real, pointer w3gdatmd::ssdsbrf2

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3setg().

◆ ssdsbrfdf

integer, pointer w3gdatmd::ssdsbrfdf

Definition at line 1321 of file w3gdatmd.F90.

Referenced by w3src4md::w3sds4(), and w3setg().

◆ ssdsbt

real pointer w3gdatmd::ssdsbt

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3src4md::w3sds4(), and w3setg().

◆ ssdsc

real, dimension(:), pointer w3gdatmd::ssdsc

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3src4md::w3sds4(), w3setg(), and w3src4md::w3spr4().

◆ ssdsc1

real, pointer w3gdatmd::ssdsc1

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3setg().

◆ ssdsc2

real, pointer w3gdatmd::ssdsc2

Definition at line 1311 of file w3gdatmd.F90.

◆ ssdsc3

real, pointer w3gdatmd::ssdsc3

Definition at line 1311 of file w3gdatmd.F90.

◆ ssdsc4

real, pointer w3gdatmd::ssdsc4

Definition at line 1311 of file w3gdatmd.F90.

◆ ssdsc5

real, pointer w3gdatmd::ssdsc5

Definition at line 1311 of file w3gdatmd.F90.

◆ ssdsc6

real, pointer w3gdatmd::ssdsc6

Definition at line 1311 of file w3gdatmd.F90.

◆ ssdscos

real pointer w3gdatmd::ssdscos

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), and w3setg().

◆ ssdsdik

integer, pointer w3gdatmd::ssdsdik

Definition at line 1321 of file w3gdatmd.F90.

◆ ssdsdth

real pointer w3gdatmd::ssdsdth

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3src4md::w3sds4(), and w3setg().

◆ ssdshck

real, pointer w3gdatmd::ssdshck

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), and w3setg().

◆ ssdsiso

integer, pointer w3gdatmd::ssdsiso

Definition at line 1321 of file w3gdatmd.F90.

Referenced by w3src4md::w3sds4(), and w3setg().

◆ ssdsp

real pointer w3gdatmd::ssdsp

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3src4md::w3sds4(), and w3setg().

◆ ssdspbk

real, pointer w3gdatmd::ssdspbk

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), and w3setg().

◆ ssinbr

real, pointer w3gdatmd::ssinbr

Definition at line 1324 of file w3gdatmd.F90.

Referenced by w3setg(), and w3src4md::w3sin4().

◆ ssinthp

real pointer w3gdatmd::ssinthp

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3setg(), w3src3md::w3sin3(), and w3src4md::w3sin4().

◆ sstxftf

real pointer w3gdatmd::sstxftf

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3setg(), w3src3md::w3spr3(), and w3src4md::w3spr4().

◆ sstxftftail

real, pointer w3gdatmd::sstxftftail

Definition at line 1340 of file w3gdatmd.F90.

Referenced by w3setg(), w3src3md::w3spr3(), and w3src4md::w3spr4().

◆ sstxftwn

real pointer w3gdatmd::sstxftwn

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3setg(), w3src3md::w3spr3(), and w3src4md::w3spr4().

◆ sswellf

real, dimension(:), pointer w3gdatmd::sswellf

◆ sswellfpar

integer, pointer w3gdatmd::sswellfpar

Definition at line 1321 of file w3gdatmd.F90.

1321  INTEGER, POINTER :: SSWELLFPAR, SSDSISO,SSDSBRFDF, &
1322  IKTAB(:,:), SATINDICES(:,:),SSDSDIK

Referenced by w3setg().

◆ stedu

real, pointer w3gdatmd::stedu

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3iogomd::w3outg(), and w3setg().

◆ stexu

real, pointer w3gdatmd::stexu

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3iogomd::w3outg(), and w3setg().

◆ steyu

real, pointer w3gdatmd::steyu

Definition at line 1183 of file w3gdatmd.F90.

Referenced by w3iogomd::w3outg(), and w3setg().

◆ swl6b1

real, pointer w3gdatmd::swl6b1

Definition at line 1335 of file w3gdatmd.F90.

Referenced by w3setg(), w3swldmd::w3swl4(), and w3swldmd::w3swl6().

◆ swl6cstb1

logical, pointer w3gdatmd::swl6cstb1

Definition at line 1338 of file w3gdatmd.F90.

Referenced by w3setg(), and w3swldmd::w3swl6().

◆ swl6s6

logical, pointer w3gdatmd::swl6s6

Definition at line 1338 of file w3gdatmd.F90.

Referenced by gxexpo(), w3exnc(), w3expo(), w3setg(), and w3srcemd::w3srce().

◆ sx

real, pointer w3gdatmd::sx

Definition at line 1183 of file w3gdatmd.F90.

1183  REAL, POINTER :: SX, SY, X0, Y0, DTCFL, DTCFLI, DTMAX, &
1184  DTMIN, DMIN, CTMAX, FICE0, FICEN, &
1185  FICEL, PFMOVE, STEXU, STEYU, STEDU, &
1186  IICEHMIN, IICEHINIT, ICESCALES(:), &
1187  IICEHFAC, IICEHDISP, IICEDDISP, IICEFDISP, &
1188  BTBETA, AAIRCMIN, AAIRGB

Referenced by w3triamd::coordmax(), w3oacpmd::cpl_oasis_grid(), w3smcomd::smc_interp(), w3psmcmd::smcgradn(), w3bounc(), w3bound(), w3exnc(), w3gntx(), w3iobcmd::w3iobc(), w3iopomd::w3iopp(), w3psmcmd::w3psmc(), w3setg(), w3ref1md::w3sref(), w3wavemd::w3wave(), w3wdasmd::w3wdas(), w3pro2md::w3xyp2(), wmgridmd::wmgeql(), wmgridmd::wmghgh(), wminitmd::wminit(), wminitmd::wminitnml(), wmiopomd::wmiopp(), wmupdtmd::wmupds(), and wmupdtmd::wmupdv().

◆ sy

◆ tail_id

integer pointer w3gdatmd::tail_id

Definition at line 1270 of file w3gdatmd.F90.

1270  INTEGER, POINTER :: TAIL_ID

Referenced by w3fld1md::infld(), and w3setg().

◆ tail_lev

real pointer w3gdatmd::tail_lev

Definition at line 1271 of file w3gdatmd.F90.

1271  REAL, POINTER :: TAIL_LEV, TAIL_TRAN1, TAIL_TRAN2

Referenced by w3fld1md::infld(), and w3setg().

◆ tail_tran1

real pointer w3gdatmd::tail_tran1

Definition at line 1271 of file w3gdatmd.F90.

Referenced by w3fld1md::infld(), and w3setg().

◆ tail_tran2

real pointer w3gdatmd::tail_tran2

Definition at line 1271 of file w3gdatmd.F90.

Referenced by w3fld1md::infld(), and w3setg().

◆ th

◆ trflag

integer, pointer w3gdatmd::trflag

Definition at line 1097 of file w3gdatmd.F90.

Referenced by w3setg(), and w3updtmd::w3utrn().

◆ tria

real(8), dimension(:), pointer w3gdatmd::tria

Definition at line 1131 of file w3gdatmd.F90.

1131  REAL(8), POINTER :: TRIA(:)

Referenced by w3triamd::area_si(), w3triamd::spatial_grid(), w3triamd::ug_gradients(), w3setg(), w3profsmd::w3xypfsfct2(), and w3profsmd::w3xypfsnimp().

◆ trigp

◆ trnx

real, dimension(:,:), pointer w3gdatmd::trnx

Definition at line 1200 of file w3gdatmd.F90.

1200  REAL , POINTER :: TRNX(:,:), TRNY(:,:) ! TRANSPARENCY INFORMATION ON IX,IY

Referenced by w3initmd::w3init(), w3iopomd::w3iopp(), w3setg(), w3setref(), and w3wavemd::w3wave().

◆ trny

real, dimension(:,:), pointer w3gdatmd::trny

Definition at line 1200 of file w3gdatmd.F90.

Referenced by w3initmd::w3init(), w3iopomd::w3iopp(), w3setg(), w3setref(), and w3wavemd::w3wave().

◆ ttauwshelter

real pointer w3gdatmd::ttauwshelter

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3src4md::insin4(), w3src4md::tabu_tauhf2(), w3setg(), and w3src4md::w3sin4().

◆ ungtype

◆ uostfactorlocal

real, pointer w3gdatmd::uostfactorlocal

Definition at line 1401 of file w3gdatmd.F90.

1401  REAL, POINTER :: UOSTFACTORLOCAL, UOSTFACTORSHADOW

Referenced by w3setg().

◆ uostfactorshadow

real, pointer w3gdatmd::uostfactorshadow

Definition at line 1401 of file w3gdatmd.F90.

Referenced by w3setg().

◆ uostfilelocal

character(len=:), pointer w3gdatmd::uostfilelocal

Definition at line 1400 of file w3gdatmd.F90.

1400  CHARACTER(LEN=:), POINTER :: UOSTFILELOCAL, UOSTFILESHADOW

Referenced by w3setg().

◆ uostfileshadow

character(len=:), pointer w3gdatmd::uostfileshadow

Definition at line 1400 of file w3gdatmd.F90.

Referenced by w3setg().

◆ us3df

◆ ussp_wn

real, dimension(:), pointer w3gdatmd::ussp_wn

Definition at line 1099 of file w3gdatmd.F90.

1099  REAL, POINTER :: USSP_WN(:)

Referenced by w3iogomd::calc_u3stokes(), w3exnc(), and w3setg().

◆ usspf

◆ wdcg

real, pointer w3gdatmd::wdcg

Definition at line 1260 of file w3gdatmd.F90.

1260  REAL, POINTER :: WDCG, WDTH

Referenced by w3pro3md::w3cflxy(), w3setg(), and w3pro3md::w3xyp3().

◆ wdth

real, pointer w3gdatmd::wdth

Definition at line 1260 of file w3gdatmd.F90.

Referenced by w3pro3md::w3cflxy(), w3setg(), and w3pro3md::w3xyp3().

◆ wwcor

real, dimension(:), pointer w3gdatmd::wwcor

Definition at line 1251 of file w3gdatmd.F90.

1251  REAL, POINTER :: WWCOR(:)

Referenced by w3setg(), and w3updtmd::w3uwnd().

◆ wwnmeanp

real pointer w3gdatmd::wwnmeanp

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3setg(), w3src3md::w3spr3(), and w3src4md::w3spr4().

◆ wwnmeanptail

real, pointer w3gdatmd::wwnmeanptail

Definition at line 1340 of file w3gdatmd.F90.

1340  REAL, POINTER :: WWNMEANPTAIL, SSTXFTFTAIL

Referenced by w3setg(), w3src3md::w3spr3(), and w3src4md::w3spr4().

◆ x0

◆ xf1

real, pointer w3gdatmd::xf1

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ xf2

real, pointer w3gdatmd::xf2

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ xfc

real, pointer w3gdatmd::xfc

Definition at line 1245 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ xfh

real, pointer w3gdatmd::xfh

Definition at line 1304 of file w3gdatmd.F90.

Referenced by w3src2md::w3sds2(), and w3setg().

◆ xflt

real, pointer w3gdatmd::xflt

Definition at line 1245 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ xfr

◆ xft

real, pointer w3gdatmd::xft

Definition at line 1245 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ xgrd

◆ xrel

real, pointer w3gdatmd::xrel

Definition at line 1245 of file w3gdatmd.F90.

Referenced by w3setg(), and w3srcemd::w3srce().

◆ xsi

real, dimension(:), pointer w3gdatmd::xsi

Definition at line 1361 of file w3gdatmd.F90.

Referenced by expand(), w3snl3md::insnl3(), w3setg(), and w3snl3md::w3snl3().

◆ y0

◆ ygrd

◆ zb

real, dimension(:), pointer w3gdatmd::zb

◆ zwind

real, pointer w3gdatmd::zwind

Definition at line 1304 of file w3gdatmd.F90.

1304  REAL, POINTER :: ZWIND, FSWELL, SHSTAB, &
1305  OFSTAB, CCNG, CCPS, FFNG, FFPS, &
1306  CDSA0, CDSA1, CDSA2, SDSALN, &
1307  CDSB0, CDSB1, CDSB2, CDSB3, FPIMIN, &
1308  XFH, XF1, XF2

Referenced by w3setg(), w3src2md::w3sin2(), w3src2md::w3spr2(), w3srcemd::w3srce(), and w3updtmd::w3uwnd().

◆ zz0max

◆ zz0rat

real pointer w3gdatmd::zz0rat

Definition at line 1311 of file w3gdatmd.F90.

Referenced by w3setg(), w3src3md::w3sin3(), and w3src4md::w3sin4().

◆ zzalp

real pointer w3gdatmd::zzalp

◆ zzwnd

real pointer w3gdatmd::zzwnd

Definition at line 1311 of file w3gdatmd.F90.

1311  REAL, POINTER :: ZZWND, AALPHA, BBETA, ZZ0MAX, ZZ0RAT,&
1312  ZZALP, FFXFM, FFXPM, &
1313  SSINTHP, TTAUWSHELTER, SSWELLF(:), &
1314  SSDSC1, SSDSC2, SSDSC3, SSDSBR, &
1315  SSDSP, WWNMEANP, SSTXFTF, SSTXFTWN, &
1316  SSDSC4, SSDSC5, SSDSC6, SSDSBT, &
1317  DDELTA1, DDELTA2, &
1318  SSDSCOS, SSDSDTH, SSDSBM(:)

Referenced by w3src3md::calc_ustar(), w3src4md::calc_ustar(), w3src3md::tabu_stress(), w3src4md::tabu_stress(), w3setg(), w3src3md::w3sin3(), w3src4md::w3sin4(), w3src4md::w3spr4(), and w3srcemd::w3srce().

constants::pi
real, parameter pi
PI Value of Pi.
Definition: constants.F90:71
constants::dera
real, parameter dera
DERA Conversion factor from degrees to radians.
Definition: constants.F90:77
w3gdatmd::flx4a0
real, pointer flx4a0
Definition: w3gdatmd.F90:1289
w3gsrumd::iclo_smpl
integer, parameter, public iclo_smpl
Definition: w3gsrumd.F90:315
constants::rade
real, parameter rade
RADE Conversion factor from radians to degrees.
Definition: constants.F90:76
w3odatmd::ndse
integer, pointer ndse
Definition: w3odatmd.F90:456
w3gsrumd::iclo_none
integer, parameter, public iclo_none
Definition: w3gsrumd.F90:314
w3servmd
Definition: w3servmd.F90:3
constants::tpi
real, parameter tpi
TPI 2*Pi.
Definition: constants.F90:72
w3servmd::strace
subroutine strace(IENT, SNAME)
Definition: w3servmd.F90:148
w3gsrumd::iclo_trpl
integer, parameter, public iclo_trpl
Definition: w3gsrumd.F90:319
constants
Define some much-used constants for global use (all defined as PARAMETER).
Definition: constants.F90:20
w3gsrumd::w3gsup
subroutine, public w3gsup(GSU, IUNIT, LFULL)
Definition: w3gsrumd.F90:885