[MITgcm-support] Prescribing winds using stress versus bulk formulae
Sanjiv Ramachandran
sramachandran at umassd.edu
Wed Jan 9 15:13:32 EST 2019
Hi Martin,
I turned off the bulk forcing formulae in EXF_options.h as you had suggested:
#undef ALLOW_ATM_TEMP
#define ALLOW_ATM_WIND
#undef ALLOW_DOWNWARD_RADIATION
The data.exf file now reads (showing only the relevant bits):
&EXF_NML_03
# uwindconst = -1.0,
# atempconst = 298.0,
# aqhconst = 0.007,
swfluxconst= 0.0,
hfluxconst = 0.0,
sfluxconst = 0.0,
&
I am still having the same problems, which is that the jet keeps accelerating in the simulation with constant winds until I get NaN values.
(i) After the changes listed above, my EXF diagnostics file shows zero values for 'EXFswnet' and 'EXFqnet'. The variables 'EXFhs', 'EXFhl' and 'EXFlwnet' are not zero but presumably that is okay because I am using option 1 (Sec.B, EXF_options.h) to specify the fluxes in data.exf.
(ii) I am attaching a few plots at the link below from the two simulations, one with constant \tau and the other with constant winds that uses the 'exf' package to compute \tau using exchange coefficients. The topmost plot on the first page shows the effective wind stress is much smaller than the value I am using in the constant-tau simulations. This is true at all times for the constant-wind simulation, based on the values in the EXF diagnostics file. Yet, the zonal velocity ('U' in my plots) is very different in the two simulations.
(Note: I have modified the exf_init_varia.F file to specify an initial 'uwind' profile that is zero towards the walls. Specifying a constant 'uwind' value in data.exf yields undesirable upwelling and downwelling at the south and north walls).
Here is the link for the plots:
https://www.dropbox.com/s/ut9fqhy826a0hys/tau_vs_wind_check.pdf?dl=0
Does 'exf' need to know whether I am using non-periodic BCs in the meridional direction?
Thanks!
Sanjiv
________________________________
From: MITgcm-support <mitgcm-support-bounces at mitgcm.org> on behalf of Martin Losch <Martin.Losch at awi.de>
Sent: Friday, January 4, 2019 4:40 AM
To: MITgcm Support
Subject: Re: [MITgcm-support] Prescribing winds using stress versus bulk formulae
Hi Sanjiv,
I think that with your settings, you’ll have some unbalanced thermal forcing (that has nothing to do with the wind).
You can check with the diagnostics package what the individual fluxes are:
------------------------------------------------------------------------------------
Num |<-Name->|Levs| mate |<- code ->|<-- Units -->|<- Tile (max=80c)
------------------------------------------------------------------------------------
187 |EXFhs | 1 | |SM U1|W/m^2 |Sensible heat flux into ocean, >0 increases theta
188 |EXFhl | 1 | |SM U1|W/m^2 |Latent heat flux into ocean, >0 increases theta
189 |EXFlwnet| 1 | |SM U1|W/m^2 |Net upward longwave radiation, >0 decreases theta
190 |EXFswnet| 1 | |SM U1|W/m^2 |Net upward shortwave radiation, >0 decreases theta
191 |EXFlwdn | 1 | |SM U1|W/m^2 |Downward longwave radiation, >0 increases theta
192 |EXFswdn | 1 | |SM U1|W/m^2 |Downward shortwave radiation, >0 increases theta
193 |EXFqnet | 1 | |SM U1|W/m^2 |Net upward heat flux (turb+rad), >0 decreases theta
194 |EXFtaux | 1 | |UM U1|N/m^2 |zonal surface wind stress, >0 increases uVel
195 |EXFtauy | 1 | |VM U1|N/m^2 |meridional surface wind stress, >0 increases vVel
196 |EXFuwind| 1 | |UM U1|m/s |zonal 10-m wind speed, >0 eastward
197 |EXFvwind| 1 | |VM U1|m/s |meridional 10-m wind speed, >0 northward
198 |EXFwspee| 1 | |SM U1|m/s |10-m wind speed modulus ( >= 0 )
199 |EXFatemp| 1 | |SM U1|degK |surface (2-m) air temperature
200 |EXFaqh | 1 | |SM U1|kg/kg |surface (2-m) specific humidity
201 |EXFevap | 1 | |SM U1|m/s |evaporation, > 0 increases salinity
202 |EXFpreci| 1 | |SM U1|m/s |precipitation, > 0 decreases salinity
203 |EXFsnow | 1 | |SM U1|m/s |snow precipitation, > 0 decreases salinity
204 |EXFempmr| 1 | |SM U1|m/s |net upward freshwater flux, > 0 increases salinity
205 |EXFpress| 1 | |SM U1|N/m^2 |atmospheric pressure field
206 |EXFroff | 1 | |SM U1|m/s |river runoff, > 0 decreases salinity
You’ll probably find that EXFhs, EXFhl, EXFlwnet will be non-zero. I order to avoid that, you’d have to turn off the bulk formulae and radiation code:
#undef ALLOW_DOWNWARD_RADIATION
#undef ALLOW_BULKFORMULAE
See the default pkg/exf/EXF_OPTIONS.h Section (B) Surface buoyance flux. You want option (1), that would be similar to not using exf, except for the wind fields.
Martin
On 3. Jan 2019, at 22:53, Sanjiv Ramachandran <sramachandran at umassd.edu<mailto:sramachandran at umassd.edu>> wrote:
Hi all,
I am some questions about prescribing winds through the 'exf' package. My initial condition is a shallow mixed layer in geostrophic balance (based on the 'MLAdjust' test case) with a zonal jet whose peak value at the surface is initially 0.24 m/s.
When I turn off the 'exf' package, and prescribe a wind stress = 0.05 N/m2 through the 'zonalWindFile' variable in 'data', the model runs without problems for 50 days.
When I turn on the 'exf' package with a constant wind of 3 m/ the zonal velocities in the domain keep increasing with time until I get NaN values around day 30. I am not sure why this is happening as the wind stress in the second case is much weaker. Winds of 3 m/s, assuming an exchange coefficient (Cd) of 1.2e-3, and rho_air=1.22 kg/m3, correspond to a wind stress of 0.013 N/m2.
For the simulation with 'exf' turned on, I have enabled the following three options in EXF_OPTIONS.h:
#define ALLOW_ATM_TEMP
#define ALLOW_ATM_WIND
#define ALLOW_DOWNWARD_RADIATION
I am pasting below the relevant parameters from some of the data files for the simulation with 'exf' turned on. Any pointers on where I might be erring would be greatly appreciated.
--------------------------data.pkg---------------------------------------------
# Packages
&PACKAGES
useEXF = .TRUE.,
useCAL = .TRUE.,
useMNC = .TRUE.,
useKPP = .TRUE.,
useDiagnostics=.TRUE.,
&
----------------------------data.kpp---------------------------------------------
# KPP parameters
&KPP_PARM01
KPPmixingMaps = .FALSE.,
KPPwriteState = .TRUE.,
KPP_ghatUseTotalDiffus=.TRUE.,
kpp_dumpFreq = 2160000.,
&
---------------------------data.exf------------------------------------------------
&EXF_NML_01
# useExfCheckRange = .TRUE.,
useAtmWind=.TRUE.,
readStressOnCgrid=.TRUE.,
# repeatPeriod = 2678400.0,
# exf_iprec = 32,
#
&
&EXF_NML_02
hfluxfile = ' ',
sfluxfile = ' ',
ustressfile = ' ',
vstressfile = ' ',
atempfile = ' ',
aqhfile = ' ',
uwindfile = ' ',
vwindfile = ' ',
evapfile = ' ',
precipfile = ' ',
lwfluxfile = ' ',
swfluxfile = ' ',
lwdownfile = ' ',
swdownfile = ' ',
runoffFile = ' ',
climsstfile = ' ',
climsssfile = ' ',
&
&EXF_NML_03
uwindconst = -3.0,
atempconst = 298.0, # approx. 0.5 degree cooler than the SST
swfluxconst= 0.0, # zeroed out for debugging
lwdownconst = 0.0, # zeroed out for debugging
&
----------------------------------------data-------------------------------------
&PARM01
viscAr=1.E-5,
viscC4leith = 1.85,
viscC4leithD = 1.85,
viscC4smag = 1.,
viscA4GridMax = 1.,
useFullLeith=.TRUE.,
no_slip_sides=.FALSE.,
no_slip_bottom=.FALSE.,
vectorInvariantMomentum=.TRUE.,
ivdc_kappa=0.,
implicitDiffusion=.TRUE.,
implicitViscosity=.TRUE.,
f0=4.E-5, # corresponds to lat. = 16 N
beta=1.E-11,
useJamartWetPoints=.TRUE.,
eosType='LINEAR',
# Temperature
tAlpha=3.16E-4,
# Salinity
sBeta =6.32E-4,
gravity=9.81,
rhoNil=1027.,
rigidLid=.FALSE.,
implicitFreeSurface=.TRUE.,
staggerTimeStep=.TRUE.,
tempAdvScheme=33,
saltAdvScheme=33,
readBinaryPrec=64,
writeBinaryPrec=64,
nonHydrostatic=.FALSE.,
&
&PARM02
cg2dMaxIters=1000,
cg2dTargetResidual=1.E-11,
cg3dMaxIters=40,
cg3dTargetResidual=1.E-9,
&
&PARM03
cAdjFreq=0.,
&
---------------------------------------------------------
Thanks,
Sanjiv
_______________________________________________
MITgcm-support mailing list
MITgcm-support at mitgcm.org<mailto:MITgcm-support at mitgcm.org>
http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.mitgcm.org/pipermail/mitgcm-support/attachments/20190109/7ecc1f00/attachment-0001.html>
More information about the MITgcm-support
mailing list