Compiling 'AVERAGES_TIDE'

General scientific issues regarding ROMS

Moderators: arango, robertson

Post Reply
Message
Author
stvyng
Posts: 10
Joined: Tue Jan 31, 2012 10:35 pm
Location: NOAA

Compiling 'AVERAGES_TIDE'

#1 Unread post by stvyng »

I have a cpp.h working working well (tested with a recent version of ROMS codes) for tide only run with following options.

#define SSH_TIDES /* flag - impose tidal elevation */
#define UV_TIDES /* flag - tidal currents */
#undef RAMP_TIDES /* ramp OBC data or the body forcing */
#define ADD_FSOBC /* add tidal elevation to processed OBC data */
#define ADD_M2OBC /* tidal currents to processed OBC data */

However, when I added on the following for tidal harmonic analysis,
# define AVERAGES_DETIDE

I got the following compiling errors (I did 'make clean' before the 'make'):

wrt_tides.f90(73): error #6460: This is not a field name that is defined in the encompassing structure. [COSW_SUM]
& TIDES(ng) % CosW_sum, &
----------------------------------------^
wrt_tides.f90(71): error #6285: There is no matching specific subroutine for this generic subroutine call. [NETCDF_PUT_FVAR]
CALL netcdf_put_fvar (ng, iNLM, TIDE(ng)%name, &
-----------^
wrt_tides.f90(83): error #6460: This is not a field name that is defined in the encompassing structure. [SINW_SUM]
& TIDES(ng) % SinW_sum, &
----------------------------------------^
wrt_tides.f90(81): error #6285: There is no matching specific subroutine for this generic subroutine call. [NETCDF_PUT_FVAR]
CALL netcdf_put_fvar (ng, iNLM, TIDE(ng)%name, &
-----------^
wrt_tides.f90(93): error #6460: This is not a field name that is defined in the encompassing structure. [COSWCOSW]
& TIDES(ng) % CosWCosW, &
----------------------------------------^
wrt_tides.f90(91): error #6285: There is no matching specific subroutine for this generic subroutine call. [NETCDF_PUT_FVAR]
CALL netcdf_put_fvar (ng, iNLM, TIDE(ng)%name, &
-----------^
wrt_tides.f90(103): error #6460: This is not a field name that is defined in the encompassing structure. [SINWSINW]
& TIDES(ng) % SinWSinW, &
----------------------------------------^
wrt_tides.f90(101): error #6285: There is no matching specific subroutine for this generic subroutine call. [NETCDF_PUT_FVAR]
CALL netcdf_put_fvar (ng, iNLM, TIDE(ng)%name, &
-----------^
wrt_tides.f90(113): error #6460: This is not a field name that is defined in the encompassing structure. [SINWCOSW]
& TIDES(ng) % SinWCosW, &
----------------------------------------^
wrt_tides.f90(111): error #6285: There is no matching specific subroutine for this generic subroutine call. [NETCDF_PUT_FVAR]
CALL netcdf_put_fvar (ng, iNLM, TIDE(ng)%name, &
-----------^
wrt_tides.f90(128): error #6460: This is not a field name that is defined in the encompassing structure. [ZETA_TIDE]
& TIDES(ng) % zeta_tide)
---------------------------------------^
wrt_tides.f90(128): error #6634: The shape matching rules of actual arguments and dummy arguments have been violated. [ZETA_TIDE]
& TIDES(ng) % zeta_tide)
---------------------------------------^
wrt_tides.f90(148): error #6460: This is not a field name that is defined in the encompassing structure. [UBAR_TIDE]
& TIDES(ng) % ubar_tide)
---------------------------------------^
wrt_tides.f90(148): error #6634: The shape matching rules of actual arguments and dummy arguments have been violated. [UBAR_TIDE]
& TIDES(ng) % ubar_tide)
---------------------------------------^
wrt_tides.f90(168): error #6460: This is not a field name that is defined in the encompassing structure. [VBAR_TIDE]
& TIDES(ng) % vbar_tide)
---------------------------------------^
wrt_tides.f90(168): error #6634: The shape matching rules of actual arguments and dummy arguments have been violated. [VBAR_TIDE]
& TIDES(ng) % vbar_tide)
---------------------------------------^
wrt_tides.f90(189): error #6460: This is not a field name that is defined in the encompassing structure. [U_TIDE]
& TIDES(ng) % u_tide)
---------------------------------------^
wrt_tides.f90(189): error #6634: The shape matching rules of actual arguments and dummy arguments have been violated. [U_TIDE]
& TIDES(ng) % u_tide)
---------------------------------------^
wrt_tides.f90(210): error #6460: This is not a field name that is defined in the encompassing structure. [V_TIDE]
& TIDES(ng) % v_tide)
---------------------------------------^
wrt_tides.f90(210): error #6634: The shape matching rules of actual arguments and dummy arguments have been violated. [V_TIDE]
& TIDES(ng) % v_tide)
---------------------------------------^
wrt_tides.f90(232): error #6460: This is not a field name that is defined in the encompassing structure. [T_TIDE]
& TIDES(ng) % t_tide(:,:,:,:,itrc))
-----------------------------------------^
wrt_tides.f90(232): error #6158: The structure-name is invalid or is missing. [TIDES]
& TIDES(ng) % t_tide(:,:,:,:,itrc))
-----------------------------^
wrt_tides.f90(232): error #6634: The shape matching rules of actual arguments and dummy arguments have been violated.
& TIDES(ng) % t_tide(:,:,:,:,itrc))
-----------------------------^
compilation aborted for wrt_tides.f90 (code 1)
make: *** [Build/wrt_tides.o] Error 1

Thanks in advance!

User avatar
kate
Posts: 4088
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: Compiling 'AVERAGES_TIDE'

#2 Unread post by kate »

The answer is to also #define AVERAGES.

His/her next problem is a bug in set_avg.F in which the "use mod_grid" is enclosed in #ifdef WET_DRY. There are uses of the GRID structure outside of the WET_DRY options in set_avg.F.

stvyng
Posts: 10
Joined: Tue Jan 31, 2012 10:35 pm
Location: NOAA

Re: Compiling 'AVERAGES_TIDE'

#3 Unread post by stvyng »

Thanks, Kate!

I tested and the ROMS code passed compilation only with
#undef WET_DRY
# define AVERAGES_DETIDE
# define AVERAGE

With "define WET_DRY", it gives error messages like
set_avg.f90(2330): error #6837: The leftmost part-ref in a data-ref can not be a function reference. [GRID]
& GRID(ng)%umask_io(i,j)* &

User avatar
kate
Posts: 4088
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: Compiling 'AVERAGES_TIDE'

#4 Unread post by kate »

Did you take out the '#ifdef WET_DRY' on the 'use mod_grid' statement? Try that.

stvyng
Posts: 10
Joined: Tue Jan 31, 2012 10:35 pm
Location: NOAA

Re: Compiling 'AVERAGES_TIDE'

#5 Unread post by stvyng »

I've tried that and still it showed the same error messages. I'll use the non-'wet-dry'. It should serve my purpose well. Thanks!

stvyng
Posts: 10
Joined: Tue Jan 31, 2012 10:35 pm
Location: NOAA

Re: Compiling 'AVERAGES_TIDE'

#6 Unread post by stvyng »

Another issue for help:

I got the following error message:
DEF_VAR - unable to define variable: Hcount
in NetCDF file ./my_harmonic.nc

What's the issue here? What's the Hcount?

User avatar
kate
Posts: 4088
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: Compiling 'AVERAGES_TIDE'

#7 Unread post by kate »

Code: Select all

        Vinfo( 1)='Hcount'
        Vinfo( 2)='number of time-accumulated tide harmonics'
I don't know why it failed, though.

osua72
Posts: 20
Joined: Tue Feb 12, 2013 2:54 pm
Location: Bangor University

Re: Compiling 'AVERAGES_TIDE'

#8 Unread post by osua72 »

Hello,

I am trying to use the AVERAGES_DETIDE function and it seems to be compiling okay but when the model has run y averages file only contains the following and is missing some variables i.e: hcount, cos_W and sin_W..I'm assuming I've just not switched something on? Help would be greatly appreciated, thank you


netcdf ocean_avg {
dimensions:
xi_rho = 325 ;
xi_u = 324 ;
xi_v = 325 ;
xi_psi = 324 ;
eta_rho = 472 ;
eta_u = 472 ;
eta_v = 471 ;
eta_psi = 471 ;
s_rho = 10 ;
s_w = 11 ;
tracer = 2 ;
boundary = 4 ;
ocean_time = UNLIMITED ; // (408 currently)
variables:
int ntimes ;
ntimes:long_name = "number of long time-steps" ;
int ndtfast ;
ndtfast:long_name = "number of short time-steps" ;
double dt ;
dt:long_name = "size of long time-steps" ;
dt:units = "second" ;
double dtfast ;
dtfast:long_name = "size of short time-steps" ;
dtfast:units = "second" ;
double dstart ;
dstart:long_name = "time stamp assigned to model initilization" ;
dstart:units = "days since 2000-01-01 00:00:00" ;
int nHIS ;
nHIS:long_name = "number of time-steps between history records" ;
int ndefHIS ;
ndefHIS:long_name = "number of time-steps between the creation of history files" ;
int nRST ;
nRST:long_name = "number of time-steps between restart records" ;
nRST:cycle = "only latest two records are maintained" ;
int ntsAVG ;
ntsAVG:long_name = "starting time-step for accumulation of time-averaged fields" ;
int nAVG ;
nAVG:long_name = "number of time-steps between time-averaged records" ;
int ndefAVG ;
ndefAVG:long_name = "number of time-steps between the creation of average files" ;
int nSTA ;
nSTA:long_name = "number of time-steps between stations records" ;
double Falpha ;
Falpha:long_name = "Power-law shape barotropic filter parameter" ;
double Fbeta ;
Fbeta:long_name = "Power-law shape barotropic filter parameter" ;
double Fgamma ;
Fgamma:long_name = "Power-law shape barotropic filter parameter" ;
double nl_tnu2(tracer) ;
nl_tnu2:long_name = "nonlinear model Laplacian mixing coefficient for tracers" ;
nl_tnu2:units = "meter2 second-1" ;
double nl_visc2 ;
nl_visc2:long_name = "nonlinear model Laplacian mixing coefficient for momentum" ;
nl_visc2:units = "meter2 second-1" ;
double Akt_bak(tracer) ;
Akt_bak:long_name = "background vertical mixing coefficient for tracers" ;
Akt_bak:units = "meter2 second-1" ;
double Akv_bak ;
Akv_bak:long_name = "background vertical mixing coefficient for momentum" ;
Akv_bak:units = "meter2 second-1" ;
double Akk_bak ;
Akk_bak:long_name = "background vertical mixing coefficient for turbulent energy" ;
Akk_bak:units = "meter2 second-1" ;
double Akp_bak ;
Akp_bak:long_name = "background vertical mixing coefficient for length scale" ;
Akp_bak:units = "meter2 second-1" ;
double rdrg ;
rdrg:long_name = "linear drag coefficient" ;
rdrg:units = "meter second-1" ;
double rdrg2 ;
rdrg2:long_name = "quadratic drag coefficient" ;
double Zob ;
Zob:long_name = "bottom roughness" ;
Zob:units = "meter" ;
double Zos ;
Zos:long_name = "surface roughness" ;
Zos:units = "meter" ;
double gls_p ;
gls_p:long_name = "stability exponent" ;
double gls_m ;
gls_m:long_name = "turbulent kinetic energy exponent" ;
double gls_n ;
gls_n:long_name = "turbulent length scale exponent" ;
double gls_cmu0 ;
gls_cmu0:long_name = "stability coefficient" ;
double gls_c1 ;
gls_c1:long_name = "shear production coefficient" ;
double gls_c2 ;
gls_c2:long_name = "dissipation coefficient" ;
double gls_c3m ;
gls_c3m:long_name = "buoyancy production coefficient (minus)" ;
double gls_c3p ;
gls_c3p:long_name = "buoyancy production coefficient (plus)" ;
double gls_sigk ;
gls_sigk:long_name = "constant Schmidt number for TKE" ;
double gls_sigp ;
gls_sigp:long_name = "constant Schmidt number for PSI" ;
double gls_Kmin ;
gls_Kmin:long_name = "minimum value of specific turbulent kinetic energy" ;
double gls_Pmin ;
gls_Pmin:long_name = "minimum Value of dissipation" ;
double Charnok_alpha ;
Charnok_alpha:long_name = "Charnok factor for surface roughness" ;
double Zos_hsig_alpha ;
Zos_hsig_alpha:long_name = "wave amplitude factor for surface roughness" ;
double sz_alpha ;
sz_alpha:long_name = "surface flux from wave dissipation" ;
double CrgBan_cw ;
CrgBan_cw:long_name = "surface flux due to Craig and Banner wave breaking" ;
double Znudg ;
Znudg:long_name = "free-surface nudging/relaxation inverse time scale" ;
Znudg:units = "day-1" ;
double M2nudg ;
M2nudg:long_name = "2D momentum nudging/relaxation inverse time scale" ;
M2nudg:units = "day-1" ;
double M3nudg ;
M3nudg:long_name = "3D momentum nudging/relaxation inverse time scale" ;
M3nudg:units = "day-1" ;
double Tnudg(tracer) ;
Tnudg:long_name = "Tracers nudging/relaxation inverse time scale" ;
Tnudg:units = "day-1" ;
double rho0 ;
rho0:long_name = "mean density used in Boussinesq approximation" ;
rho0:units = "kilogram meter-3" ;
double R0 ;
R0:long_name = "background density used in linear equation of state" ;
R0:units = "kilogram meter-3" ;
double Tcoef ;
Tcoef:long_name = "thermal expansion coefficient" ;
Tcoef:units = "Celsius-1" ;
double Scoef ;
Scoef:long_name = "Saline contraction coefficient" ;
double gamma2 ;
gamma2:long_name = "slipperiness parameter" ;
int spherical ;
spherical:long_name = "grid type logical switch" ;
spherical:flag_values = 0, 1 ;
spherical:flag_meanings = "Cartesian spherical" ;
double xl ;
xl:long_name = "domain length in the XI-direction" ;
xl:units = "meter" ;
double el ;
el:long_name = "domain length in the ETA-direction" ;
el:units = "meter" ;
int Vtransform ;
Vtransform:long_name = "vertical terrain-following transformation equation" ;
int Vstretching ;
Vstretching:long_name = "vertical terrain-following stretching function" ;
double theta_s ;
theta_s:long_name = "S-coordinate surface control parameter" ;
double theta_b ;
theta_b:long_name = "S-coordinate bottom control parameter" ;
double Tcline ;
Tcline:long_name = "S-coordinate surface/bottom layer width" ;
Tcline:units = "meter" ;
double hc ;
hc:long_name = "S-coordinate parameter, critical depth" ;
hc:units = "meter" ;
double s_rho(s_rho) ;
s_rho:long_name = "S-coordinate at RHO-points" ;
s_rho:valid_min = -1. ;
s_rho:valid_max = 0. ;
s_rho:positive = "up" ;
s_rho:standard_name = "ocean_s_coordinate_g1" ;
s_rho:formula_terms = "s: s_rho C: Cs_r eta: zeta depth: h depth_c: hc" ;
s_rho:field = "s_rho, scalar" ;
double s_w(s_w) ;
s_w:long_name = "S-coordinate at W-points" ;
s_w:valid_min = -1. ;
s_w:valid_max = 0. ;
s_w:positive = "up" ;
s_w:standard_name = "ocean_s_coordinate_g1" ;
s_w:formula_terms = "s: s_w C: Cs_w eta: zeta depth: h depth_c: hc" ;
s_w:field = "s_w, scalar" ;
double Cs_r(s_rho) ;
Cs_r:long_name = "S-coordinate stretching curves at RHO-points" ;
Cs_r:valid_min = -1. ;
Cs_r:valid_max = 0. ;
Cs_r:field = "Cs_r, scalar" ;
double Cs_w(s_w) ;
Cs_w:long_name = "S-coordinate stretching curves at W-points" ;
Cs_w:valid_min = -1. ;
Cs_w:valid_max = 0. ;
Cs_w:field = "Cs_w, scalar" ;
double h(eta_rho, xi_rho) ;
h:long_name = "bathymetry at RHO-points" ;
h:units = "meter" ;
h:coordinates = "lon_rho lat_rho" ;
h:field = "bath, scalar" ;
double f(eta_rho, xi_rho) ;
f:long_name = "Coriolis parameter at RHO-points" ;
f:units = "second-1" ;
f:coordinates = "lon_rho lat_rho" ;
f:field = "coriolis, scalar" ;
double pm(eta_rho, xi_rho) ;
pm:long_name = "curvilinear coordinate metric in XI" ;
pm:units = "meter-1" ;
pm:coordinates = "lon_rho lat_rho" ;
pm:field = "pm, scalar" ;
double pn(eta_rho, xi_rho) ;
pn:long_name = "curvilinear coordinate metric in ETA" ;
pn:units = "meter-1" ;
pn:coordinates = "lon_rho lat_rho" ;
pn:field = "pn, scalar" ;
double lon_rho(eta_rho, xi_rho) ;
lon_rho:long_name = "longitude of RHO-points" ;
lon_rho:units = "degree_east" ;
lon_rho:standard_name = "longitude" ;
lon_rho:field = "lon_rho, scalar" ;
double lat_rho(eta_rho, xi_rho) ;
lat_rho:long_name = "latitude of RHO-points" ;
lat_rho:units = "degree_north" ;
lat_rho:standard_name = "latitude" ;
lat_rho:field = "lat_rho, scalar" ;
double lon_u(eta_u, xi_u) ;
lon_u:long_name = "longitude of U-points" ;
lon_u:units = "degree_east" ;
lon_u:standard_name = "longitude" ;
lon_u:field = "lon_u, scalar" ;
double lat_u(eta_u, xi_u) ;
lat_u:long_name = "latitude of U-points" ;
lat_u:units = "degree_north" ;
lat_u:standard_name = "latitude" ;
lat_u:field = "lat_u, scalar" ;
double lon_v(eta_v, xi_v) ;
lon_v:long_name = "longitude of V-points" ;
lon_v:units = "degree_east" ;
lon_v:standard_name = "longitude" ;
lon_v:field = "lon_v, scalar" ;
double lat_v(eta_v, xi_v) ;
lat_v:long_name = "latitude of V-points" ;
lat_v:units = "degree_north" ;
lat_v:standard_name = "latitude" ;
lat_v:field = "lat_v, scalar" ;
double lon_psi(eta_psi, xi_psi) ;
lon_psi:long_name = "longitude of PSI-points" ;
lon_psi:units = "degree_east" ;
lon_psi:standard_name = "longitude" ;
lon_psi:field = "lon_psi, scalar" ;
double lat_psi(eta_psi, xi_psi) ;
lat_psi:long_name = "latitude of PSI-points" ;
lat_psi:units = "degree_north" ;
lat_psi:standard_name = "latitude" ;
lat_psi:field = "lat_psi, scalar" ;
double mask_rho(eta_rho, xi_rho) ;
mask_rho:long_name = "mask on RHO-points" ;
mask_rho:flag_values = 0., 1. ;
mask_rho:flag_meanings = "land water" ;
mask_rho:coordinates = "lon_rho lat_rho" ;
double mask_u(eta_u, xi_u) ;
mask_u:long_name = "mask on U-points" ;
mask_u:flag_values = 0., 1. ;
mask_u:flag_meanings = "land water" ;
mask_u:coordinates = "lon_u lat_u" ;
double mask_v(eta_v, xi_v) ;
mask_v:long_name = "mask on V-points" ;
mask_v:flag_values = 0., 1. ;
mask_v:flag_meanings = "land water" ;
mask_v:coordinates = "lon_v lat_v" ;
double mask_psi(eta_psi, xi_psi) ;
mask_psi:long_name = "mask on psi-points" ;
mask_psi:flag_values = 0., 1. ;
mask_psi:flag_meanings = "land water" ;
mask_psi:coordinates = "lon_psi lat_psi" ;
double ocean_time(ocean_time) ;
ocean_time:long_name = "averaged time since initialization" ;
ocean_time:units = "seconds since 2000-01-01 00:00:00" ;
ocean_time:calendar = "gregorian" ;
ocean_time:field = "time, scalar, series" ;
float zeta(ocean_time, eta_rho, xi_rho) ;
zeta:long_name = "time-averaged free-surface" ;
zeta:units = "meter" ;
zeta:time = "ocean_time" ;
zeta:coordinates = "lon_rho lat_rho ocean_time" ;
zeta:field = "free-surface, scalar, series" ;
zeta:_FillValue = 1.e+37f ;
float zeta_detided(ocean_time, eta_rho, xi_rho) ;
zeta_detided:long_name = "time-averaged detided free-surface" ;
zeta_detided:units = "meter" ;
zeta_detided:time = "ocean_time" ;
zeta_detided:coordinates = "lon_rho lat_rho ocean_time" ;
zeta_detided:field = "zeta_detided, scalar, series" ;
zeta_detided:_FillValue = 1.e+37f ;
float ubar(ocean_time, eta_u, xi_u) ;
ubar:long_name = "time-averaged vertically integrated u-momentum component" ;
ubar:units = "meter second-1" ;
ubar:time = "ocean_time" ;
ubar:coordinates = "lon_u lat_u ocean_time" ;
ubar:field = "ubar-velocity, scalar, series" ;
ubar:_FillValue = 1.e+37f ;
float ubar_detided(ocean_time, eta_u, xi_u) ;
ubar_detided:long_name = "time-averaged detided 2D u-momentum" ;
ubar_detided:units = "meter second-1" ;
ubar_detided:time = "ocean_time" ;
ubar_detided:coordinates = "lon_u lat_u ocean_time" ;
ubar_detided:field = "ubar_detided, scalar, series" ;
ubar_detided:_FillValue = 1.e+37f ;
float vbar(ocean_time, eta_v, xi_v) ;
vbar:long_name = "time-averaged vertically integrated v-momentum component" ;
vbar:units = "meter second-1" ;
vbar:time = "ocean_time" ;
vbar:coordinates = "lon_v lat_v ocean_time" ;
vbar:field = "vbar-velocity, scalar, series" ;
vbar:_FillValue = 1.e+37f ;
float vbar_detided(ocean_time, eta_v, xi_v) ;
vbar_detided:long_name = "time-averaged detided 2D v-momentum" ;
vbar_detided:units = "meter second-1" ;
vbar_detided:time = "ocean_time" ;
vbar_detided:coordinates = "lon_v lat_v ocean_time" ;
vbar_detided:field = "vbar_detided, scalar, series" ;
vbar_detided:_FillValue = 1.e+37f ;

User avatar
kate
Posts: 4088
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: Compiling 'AVERAGES_TIDE'

#9 Unread post by kate »

There is a separate tides output file containing the tides used in detiding.

osua72
Posts: 20
Joined: Tue Feb 12, 2013 2:54 pm
Location: Bangor University

Re: Compiling 'AVERAGES_TIDE'

#10 Unread post by osua72 »

Thanks for your response Kate, I've found the variables now!

stvyng
Posts: 10
Joined: Tue Jan 31, 2012 10:35 pm
Location: NOAA

Re: Compiling 'AVERAGES_TIDE'

#11 Unread post by stvyng »

osua72,

(1) Where do you define the variable 'Hcount'? In the main input file?
(2) When you compiled, did you turn the 'wet_dry' on?
Thanks!

osua72
Posts: 20
Joined: Tue Feb 12, 2013 2:54 pm
Location: Bangor University

Re: Compiling 'AVERAGES_TIDE'

#12 Unread post by osua72 »

Hi Stvyng,

1. I didn't have to define Hcount anywhere, you only need to define the U,V, elevation, temperature and salinity variables in your ocean.in file. Hcount is found after the model has run in your frc.nc file.

2. No I didn't

stvyng
Posts: 10
Joined: Tue Jan 31, 2012 10:35 pm
Location: NOAA

Re: Compiling 'AVERAGES_TIDE'

#13 Unread post by stvyng »

Thanks, osua72!

User avatar
arango
Site Admin
Posts: 1350
Joined: Wed Feb 26, 2003 4:41 pm
Location: DMCS, Rutgers University
Contact:

Re: Compiling 'AVERAGES_TIDE'

#14 Unread post by arango »

Come on people... With a little of curiosity and using "grep -r Hcount * | grep -v .svn" in the top of the ROMS tree directory you will find where Hcount is used. You will noticed that it is defined in def_tides.F and written in wrt_tides.F. If you do another search for def_tides you will find that it is call from get_idata.F:

Code: Select all

#if defined AVERAGES_DETIDE && (defined SSH_TIDES || defined UV_TIDES)
!
!-----------------------------------------------------------------------
!  If detiding and applicable, define additional variables to store
!  time-accumulated tide harmonics variables.  These variables are
!  defined and written into input tide forcing NetCDF file.
!-----------------------------------------------------------------------
!
      CALL def_tides (ng, LdefTIDE(ng))
      IF (exit_flag.ne.NoError) RETURN
...
#endif
Then, if you care and spend some time reading you will find out that all the appropriate variables for AVERAGES_DETIDE will be appended and written to input tide forcing NetCDF file :!: and not to a new NetCDF file. I think that pretty much have the information that you seek. The compiling errors when using WET_DRY are easy to fix. Anyway, this was already corrected.

Ocean modelers need to be curious and need to learn how to solve problems and search for answers. There is no room for languidness in this field. Otherwise, we are in the wrong profession.

Post Reply