How can I understand ROMS vertical salt fluxes?

General scientific issues regarding ROMS

Moderators: arango, robertson

Post Reply
Message
Author
kglim
Posts: 2
Joined: Sun Mar 14, 2021 7:38 pm
Location: Seoul national university

How can I understand ROMS vertical salt fluxes?

#1 Unread post by kglim »

Hello,

Recently, I try to understand ROMS vertical salt fluxes in my mini closed lake model with roms_3.7.
I set my avg files to save parameters evaporation (unit: kg m^(-2) s^(-1)) & precipitation (unit: kg m^(-2) s^(-1)).
According to Bulk_fluxes.F, stflx (I understand this as EminusP which explained in varinfo.dat) can calculate using equation " (evaporation - rain) / fresh water density ".
As a result stflx has unit 'm s^(-1)'

Code: Select all

836 # ifdef EMINUSP
837           evap(i,j)=LHeat(i,j)/Hlv(i,j)
838           stflx(i,j,isalt)=cff*(evap(i,j)-rain(i,j))

I find some ROMS report or QnA said "In routine set_vbc.F such flux is multiplied by the surface salinity."
(https://www.myroms.org/projects/src/ticket/870)
So I see set_vbc.F but I can't understand How it contribute to salinity.

Code: Select all

299 !-----------------------------------------------------------------------
300 !  Multiply fresh water flux with surface salinity. If appropriate,
301 !  apply correction.
302 !-----------------------------------------------------------------------
303 !
304       DO j=JstrR,JendR
305         DO i=IstrR,IendR
306 #   if defined SCORRECTION
307           stflx(i,j,isalt)=stflx(i,j,isalt)*t(i,j,N(ng),nrhs,isalt)-    &
308      &                     Tnudg(isalt,ng)*Hz(i,j,N(ng))*               &
309      &                     (t(i,j,N(ng),nrhs,isalt)-sss(i,j))
310 #   elif defined SRELAXATION
311           stflx(i,j,isalt)=-Tnudg(isalt,ng)*Hz(i,j,N(ng))*              &
312      &                     (t(i,j,N(ng),nrhs,isalt)-sss(i,j))
313 #   else
314           stflx(i,j,isalt)=stflx(i,j,isalt)*t(i,j,N(ng),nrhs,isalt)
315 #   endif
316           btflx(i,j,isalt)=btflx(i,j,isalt)*t(i,j,1,nrhs,isalt)
317         END DO
318       END DO
319 #  endif
320 #  ifdef ICESHELF
321 !

My question is...
1) Why multiply the surface salinity?
I think stflx is fresh no salty water. But if multiply(*) apply it's not freshwater. Is there any special reason?
< stflx(i,j,isalt)=stflx(i,j,isalt)*t(i,j,N(ng),nrhs,isalt) >

2) How can I calculate vertical salt fluxes's contributions?
Initial salt(in January with homogeneous water) is about 33 and last avg daily mean salt(in December with homogeneous) is about 32 after 1year.
And stflx yearly sum is calculated as -3.3902e-06 m/s as grid mean value.
The lake depth is 10m with plain bottom and vertical layer is 10 layer.

Thank you :D


2021gwangyang_Salt_Flux_daily.png
2021gwangyang_Salt_Flux_daily.png (27.08 KiB) Viewed 5287 times
Salinity_monthly_mean_profile.png

User avatar
wilkin
Posts: 922
Joined: Mon Apr 28, 2003 5:44 pm
Location: Rutgers University
Contact:

Re: How can I understand ROMS vertical salt fluxes?

#2 Unread post by wilkin »

The ROMS state variable is salinity, not freshwater, and we do not treat precipitation as if it actually adds freshwater volume to the top cell, thereby decreasing the average salinity of the cell by dilution (the mass of salt is conserved in reality).

Instead, we fudge it by imposing a salt flux that has the equivalent effect on the dilution (or concentration in the case of evaporation) of the salinity.

If you work though the math of the salt equation, assigning old fashioned units of PSU to salt, you'll see that the surface freshwater flux needs to be multiplied by the salinity of the cell into which it flows to achieve the desired effect.
John Wilkin: DMCS Rutgers University
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu

kglim
Posts: 2
Joined: Sun Mar 14, 2021 7:38 pm
Location: Seoul national university

Re: How can I understand ROMS vertical salt fluxes?

#3 Unread post by kglim »

Thank you for your reply!

I understand what you're saying and now I can calculate the salt flux. :D :D

Post Reply