## Reading salinity and temperature

Discussion of how to use ROMS on different regional and basin scale applications.

Moderators: arango, robertson

Message
Author
aragong
Posts: 3
Joined: Thu Feb 09, 2017 3:40 pm
Location: IHCantabria

### Reading salinity and temperature

Hello, guys!

I'm really noob with the model and i'm stuck reading about how to set up the boundary condintions for 2D Field (10 S levels) of salinity and temperature for my model in the Cantabric Sea. By the time I succeded ran the model with "BULK" and "no BULK" atmospheric information in order to force the ocean surface and set up the boundary conditions of barotropic velocities and sea level. My objective now is to fix the problem with the salt/temp boundary information and then to set up a nudge condition to make more robust the model due to be used as operational system.

my *.h (upwelling) conditions setting:

** Application flag: UPWELLING
** Input script: ocean_upwelling.in
*/

/* OPTIONS associated with momentum equations:
**********************************************/
# define UV_COR
# define UV_VIS2
# define UV_QDRAG
# define MIX_GEO_UV /*3D option*/

/* OPTIONS associated with tracers equations:
**********************************************/
# define TS_DIF2
# define SALINITY
# define NONLIN_EOS
# define MIX_GEO_TS /*3D option*/

/* Pressure gradient algorithm OPTIONS:
**********************************************/
# define DJ_GRADPS /*3D option*/
# define ATM_PRESS

/* Model configuration OPTIONS:
**********************************************/
# define CURVGRID
# define SOLVE3D
# define SPLINES

/*# define AVERAGES
# define DIAGNOSTICS_TS*/

/*# define DIAGNOSTICS_UV*/

# define STATIONS
/*# define SPHERICAL*/ /*Define if lat/lon coordinates rather than x/y o if analytical spherical grid*/

/* ATMOSFERIC BOUNDARY LAYER OR DIRECT FLUXES:
**********************************************/
/*# define BULK_FLUXES*/

/* OPTIONS for analytical fields configuration:
**********************************************/
# define ANA_INITIAL
/*# define ANA_FSOBC*/
/*# define ANA_M2OBC*/
/*# define ANA_M3OBC*/
/*# define ANA_PAIR*/

# define ANA_BTFLUX /*Botom Temperature fluxes*/
# define ANA_BSFLUX /*Bottom salinity fluxes*/

/*#define ANA_VMIX*/ /*3D option*/
#define GLS_MIXING /* generic lenght scale vertical mixing */

# ifdef BULK_FLUXES
# define LONGWAVE
# define EMINUSP
/*# define ANA_RAIN*/
/*# define ANA_CLOUD*/
/*# define ANA_TAIR*/
# else
/*# define ANA_SMFLUX*/
/*# define ANA_SSFLUX*/
/*# define ANA_STFLUX*/ /*3D option*/
# endif

/* OPTIONS to nudge climatology data (primarily in sponge areas):
**********************************************/
/*# define TCLIMATOLOGY
# define TCLM_NUDGING*/

/* Nearshore and shallow water model OPTIONS
**********************************************/
/*# define WET_DRY */

/* Lateral boundary conditions OPTIONS:
**********************************************/
# define SOUTHERN_WALL

# define WEST_FSCHAPMAN
# define WEST_M2FLATHER
# define WEST_TNUDGING

# define EASTERN_WALL
/*# define EAST_FSCHAPMAN*/
/*# define EAST_M2FLATHER*/
/*# define EAST_TNUDGING*/

# define NORTH_FSCHAPMAN
# define NORTH_M2FLATHER
/*# define NORTH_TNUDGING*/

The point is that when I execute, the model don't read the variables temp_north, temp_west, salt_north, salt_west of my netCDF:
NL ROMS/TOMS: started time-stepping: (Grid: 01 TimeSteps: 00000001 - 00014400)

GET_2DFLD - surface u-momentum stress, t = ***** 13:59:59
(Rec=0314, Index=2, File: FRC_20170101T13_1476h_HARMONIE_FULLrev.nc)
(Tmin= 736696.5417 Tmax= 736758.0000)
(Min = -1.39487055E-04 Max = 1.71421219E-04)
GET_2DFLD - surface v-momentum stress, t = ***** 13:59:59
(Rec=0314, Index=2, File: FRC_20170101T13_1476h_HARMONIE_FULLrev.nc)
(Tmin= 736696.5417 Tmax= 736758.0000)
(Min = -2.51567295E-04 Max = 3.15611792E-05)
GET_2DFLD - surface air pressure, t = ***** 13:59:59
(Rec=0314, Index=2, File: FRC_20170101T13_1476h_HARMONIE_FULLrev.nc)
(Tmin= 736696.5417 Tmax= 736758.0000)
(Min = 1.02768803E+03 Max = 1.03262793E+03)
GET_2DFLD - surface net heat flux, t = ***** 13:59:59
(Rec=0314, Index=2, File: FRC_20170101T13_1476h_HARMONIE_FULLrev.nc)
(Tmin= 736696.5417 Tmax= 736758.0000)
(Min = -2.65929026E-05 Max = 3.83142718E-05)
GET_2DFLD - surface net freswater flux, (E-P), t = ***** 13:59:59
(Rec=0314, Index=2, File: FRC_20170101T13_1476h_HARMONIE_FULLrev.nc)
(Tmin= 736696.5417 Tmax= 736758.0000)
(Min = -3.89927497E-10 Max = 3.73868721E-11)
GET_NGFLD - free-surface western boundary condition, t = ***** 13:30:00
(Rec=0313, Index=1, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -4.96255874E-01 Max = -4.83855482E-01)
GET_NGFLD - free-surface northern boundary condition, t = ***** 13:30:00
(Rec=0313, Index=1, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -5.36214152E-01 Max = -4.42227146E-01)
GET_NGFLD - 2D u-momentum western boundary condition, t = ***** 13:30:00
(Rec=0313, Index=1, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -5.03501303E-03 Max = 1.31957083E-01)
GET_NGFLD - 2D v-momentum western boundary condition, t = ***** 13:30:00
(Rec=0313, Index=1, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -6.97394518E-02 Max = 6.27257210E-03)
GET_NGFLD - 2D u-momentum northern boundary condition, t = ***** 13:30:00
(Rec=0313, Index=1, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -5.41110894E-02 Max = 1.91840852E-01)
GET_NGFLD - 2D v-momentum northern boundary condition, t = ***** 13:30:00
(Rec=0313, Index=1, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -6.52779576E-02 Max = 1.57683702E-01)

STEP Day HH:MM:SS KINETIC_ENRG POTEN_ENRG TOTAL_ENRG NET_VOLUME
C => (i,j,k) Cu Cv Cw Max Speed

0 ***** 13:00:02 0.000000E+00 8.672115E+03 8.672115E+03 1.256602E+13
(0000,000,00) 0.000000E+00 0.000000E+00 0.000000E+00 0.000000E+00
DEF_HIS - creating history file: p2_frc_y_bry_his.nc
WRT_HIS - wrote history fields (Index=1,1) into time record = 0000001
DEF_STATION - creating stations file: p2_frc_y_bry_sta.nc
1 ***** 13:00:32 7.777156E-05 8.672448E+03 8.672448E+03 1.256645E+13
(0001,098,10) 3.762327E-02 1.359181E-02 0.000000E+00 3.600854E-01
2 ***** 13:01:02 1.602925E-04 8.672801E+03 8.672801E+03 1.256685E+13

I'm sure i'm setting something worng, but i didn't found the answer in all the post i read. Any help??
Thank you all for your time!

kate
Posts: 3754
Joined: Wed Jul 02, 2003 5:29 pm
Location: IMS/UAF, USA

### Re: Reading salinity and temperature

# define WEST_FSCHAPMAN
# define WEST_M2FLATHER
# define WEST_TNUDGING
First of all, this must be from an ancient version of ROMS. Why are you not using the newest ROMS?

Second, this code is commenting out the M3 and T radiation boundary conditions. The TNUDGING is just a modifier on the radiation condition.

aragong
Posts: 3
Joined: Thu Feb 09, 2017 3:40 pm
Location: IHCantabria

### Re: Reading salinity and temperature

kate wrote:
# define WEST_FSCHAPMAN
# define WEST_M2FLATHER
# define WEST_TNUDGING
First of all, this must be from an ancient version of ROMS. Why are you not using the newest ROMS?
I'm ussing roms 3.5 but it's possible that *.h and *.in script was an old modified script from other version. I'm not prety sure about versions of ROMS beacouse it's my first time ussing ROMS (in fact i started with this model one month ago) so i don't known the "scene" at all. The reasson for use that version is that the system is an upgrade for another simple model (without heat, temp and salt) built up with that version, so at least i'll have to try with that version and if have time i'll have a go to the newest one.
kate wrote:
Second, this code is commenting out the M3 and T radiation boundary conditions. The TNUDGING is just a modifier on the radiation condition.
My misstake, I was playing with the boundaries conditions in order to obtain the reading process of the salt and temp variables. I update my last fail test:

ATM_PRESS Impose atmospheric pressure onto sea surface.
ANA_BSFLUX Analytical kinematic bottom salinity flux.
ANA_BTFLUX Analytical kinematic bottom temperature flux.
ANA_INITIAL Analytical initial conditions.
ASSUMED_SHAPE Using assumed-shape arrays.
CURVGRID Orthogonal curvilinear grid.
DJ_GRADPS Parabolic Splines density Jacobian (Shchepetkin, 2002).
DOUBLE_PRECISION Double precision arithmetic.
EASTERN_WALL Wall boundary at Eastern edge.
GLS_MIXING Generic Length-Scale turbulence closure.
MIX_GEO_TS Mixing of tracers along geopotential surfaces.
MIX_GEO_UV Mixing of momentum along geopotential surfaces.
MPI MPI distributed-memory configuration.
NONLINEAR Nonlinear Model.
NONLIN_EOS Nonlinear Equation of State for seawater.
NORTH_FSCHAPMAN Northern edge, free-surface, Chapman condition.
NORTH_M2FLATHER Northern edge, 2D momentum, Flather condition.
POWER_LAW Power-law shape time-averaging barotropic filter.
PROFILE Time profiling activated .
K_GSCHEME Third-order upstream advection of TKE fields.
!RST_SINGLE Double precision fields in restart NetCDF file.
SALINITY Using salinity.
SOLVE3D Solving 3D Primitive Equations.
SOUTHERN_WALL Wall boundary at Southern edge.
SPLINES Conservative parabolic spline reconstruction.
STATIONS Writing out station data.
TS_C4HADVECTION Fourth-order centered horizontal advection of tracers.
TS_C4VADVECTION Fourth-order centered vertical advection of tracers.
TS_DIF2 Harmonic mixing of tracers.
UV_COR Coriolis term.
UV_U3HADVECTION Third-order upstream horizontal advection of 3D momentum.
UV_C4VADVECTION Fourth-order centered vertical advection of momentum.
UV_QDRAG Quadratic bottom stress.
UV_VIS2 Harmonic mixing of momentum.
VAR_RHO_2D Variable density barotropic mode.
WEST_FSCHAPMAN Western edge, free-surface, Chapman condition.
WEST_M2FLATHER Western edge, 2D momentum, Flather condition.

GET_2DFLD - surface u-momentum stress, t = ***** 13:00:00
(Rec=0313, Index=1, File: FRC_20170101T13_1476h_HARMONIE_FULLrev.nc)
(Tmin= 736696.5417 Tmax= 736758.0000)
(Min = -1.67919105E-04 Max = 1.55799481E-04)
GET_2DFLD - surface v-momentum stress, t = ***** 13:00:00
(Rec=0313, Index=1, File: FRC_20170101T13_1476h_HARMONIE_FULLrev.nc)
(Tmin= 736696.5417 Tmax= 736758.0000)
(Min = -2.19126789E-04 Max = 5.47626377E-06)
GET_2DFLD - surface air pressure, t = ***** 13:00:00
(Rec=0313, Index=1, File: FRC_20170101T13_1476h_HARMONIE_FULLrev.nc)
(Tmin= 736696.5417 Tmax= 736758.0000)
(Min = 1.02826975E+03 Max = 1.03242176E+03)
GET_2DFLD - surface net heat flux, t = ***** 13:00:00
(Rec=0313, Index=1, File: FRC_20170101T13_1476h_HARMONIE_FULLrev.nc)
(Tmin= 736696.5417 Tmax= 736758.0000)
(Min = -2.86359394E-05 Max = 4.27970383E-05)
GET_2DFLD - surface net freswater flux, (E-P), t = ***** 13:00:00
(Rec=0313, Index=1, File: FRC_20170101T13_1476h_HARMONIE_FULLrev.nc)
(Tmin= 736696.5417 Tmax= 736758.0000)
(Min = -5.69243207E-10 Max = 3.78979496E-11)
GET_NGFLD - free-surface western boundary condition, t = ***** 12:30:00
(Rec=0312, Index=2, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -1.31946147E+00 Max = -1.30623559E+00)
GET_NGFLD - free-surface northern boundary condition, t = ***** 12:30:00
(Rec=0312, Index=2, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -1.36927479E+00 Max = -1.29223608E+00)
GET_NGFLD - 2D u-momentum western boundary condition, t = ***** 12:30:00
(Rec=0312, Index=2, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -6.98151845E-03 Max = 1.15821543E-01)
GET_NGFLD - 2D v-momentum western boundary condition, t = ***** 12:30:00
(Rec=0312, Index=2, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -6.11505673E-02 Max = 5.83969436E-03)
GET_NGFLD - 2D u-momentum northern boundary condition, t = ***** 12:30:00
(Rec=0312, Index=2, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -6.57612624E-02 Max = 1.89358883E-01)
GET_NGFLD - 2D v-momentum northern boundary condition, t = ***** 12:30:00
(Rec=0312, Index=2, File: BRY3D_20170101T13_1643h_MyO_Ibi.nc)
(Tmin= 736696.5625 Tmax= 736764.9792)
(Min = -6.42100919E-02 Max = 1.76902664E-01)

I can't manage to read the salt and temp variables in my BRY setting the TRADIATON lateral conditions for my WEST and NOTH boundaries.
¿¿Maybe Am I missing something related with the boundaries in the *.in file??

I've read some info in other posts about declaration of lateral boundaries conditions in the *.in file but in mine's this block of code doesn't exist. So I'm stucked setting the boundaries in the *.h for salt and temp. (If you need some specific information for make a diagnosis please let me known)

Thank you Kate! Wonderfull ACTIVE forum, congratulations for all of you!

kate
Posts: 3754
Joined: Wed Jul 02, 2003 5:29 pm
Location: IMS/UAF, USA

### Re: Reading salinity and temperature

You need to have both TRADIATION and TNUDGING - it's the combination that we are using.

aragong
Posts: 3
Joined: Thu Feb 09, 2017 3:40 pm
Location: IHCantabria

### Re: Reading salinity and temperature

Than you Kate! With this combo LBC works and read all the information. Thank you so much!