Version 24 (modified by laurent, 4 years ago) (diff) |
---|
More realistic air-ice/snow turbulent flux estimates over sea-ice
Last edition: Wikinfo(changed_ts)? by Wikinfo(changed_by)?
The PI is responsible to closely follow the progress of the action, and especially to contact NEMO project manager if the delay on preview (or review) are longer than the 2 weeks expected.
Summary
Action | More realistic air-ice/snow turbulent flux estimates over sea-ice |
---|---|
PI(S) | Laurent Brodeau @ Ocean Next |
Digest | Implementation of state-of-the-art parameterizations for more accurate estimation air/ice turbulent fluxes (wind stress, sensible heat flux, etc). These parameterizations compute the bulk-transfer-coefficients, CD, CH & CE, to be used in the bulk formulae and also perform the height adjustment of air temperature and humidity from z=zt' to the surface wind reference height 'z=zu. |
Dependencies | no |
Branch | source:/NEMO/branches/2020/dev_r13648_ASINTER-04_laurent_bulk_ice |
Previewer(s) | Names |
Reviewer(s) | Names |
Ticket | #2369 |
Description
The work accomplished can be separated in two parts:
- Further development and improvements of the general SBCBLK interface (introduction of proper bulk parameterizations for ice-air exchanges, new air-sea bulk parameterizations + general improvements and simplifications)
- Further development of the STATION_ASF test-case (boolean sanity-check of the SBCBLK interface and sea-ice support "key_si3")
Implementation
A] New bulk parameterizations to estimate ice-air CD, CH & CE and turbulent fluxes over sea-ice
The use now has the possibility to chose between 4 options to to estimate ice-air CD, CH & CE and vertical adjustment of air temperature and humidity over sea-ice:
- constant coefficients, with values explicitly specified in the namelist
- Andreas et al., 2005
- Lüpkes et al. 2012
- Lüpkes & Gryanik, 2015
As such, the following section is added in the namsbc_blk namelist block:
!! Bulk transfer coefficients over sea-ice: (relevant IF: nn_ice >=1 ) ln_Cx_ice_cst = .true. ! use constant ice-air bulk transfer coefficients (value given below) rn_Cd_i = 1.4e-3 ! sea-ice drag coefficient rn_Ce_i = 1.4e-3 ! " sublimation coefficient rn_Ch_i = 1.4e-3 ! " sensible heat flux coefficient ln_Cx_ice_AN05 = .false. ! (Andreas et al. 2005) ln_Cx_ice_LU12 = .false. ! (Lupkes et al. 2012) ln_Cx_ice_LG15 = .false. ! (Lupkes & Gryanik 2015)
...
Note: in previous versions of the code, algorithms Lupkes et al. 2012 and Lupkes & Gryanik 2015 were found into sbcblk.F90. However, now:
- they are to be found in their respective module file (sbcblk_algo_ice_lu12.F90, sbcblk_algo_ice_lg15.F90)
- they have been rewritten from scratch in consistency with air-sea algorithms
- they include improvements such as the height-adjustment of air temperature and humidity during the iterative computation of the transfer coefficients
...
B] Improvements of the general SBCBLK interface
(new air-sea bulk parameterization + general improvements and simplifications)
- module "sbcblk_phy" becomes "sbc_phy" (outside SBC: ABL/ablmod.F90, ABL/sbcabl.F90)
- SBC/sbcblk.F90
- old and uncomplete "Cdn10_Lupkes2015" & "Cdn10_Lupkes2012" are gone!
- more efficient use of key_si3
- new air-sea bulk algorithm available: "sbcblk_algo_andreas" (Andreas et al., 2015)
- nn_iter_algo, number of iterations to be used in bulk algorithms now provided in "&namsbc_blk" namelist block
INTEGER :: nn_iter_algo ! Number of iterations in bulk param. algo ("stable ABL + weak wind" requires more)
- handling of new namelist parameters for air-ice bulk algorithms (sea section A above...)
- use of new global public arrays theta_air_zt and q_air_zt, potential air temperature and specific humidity at zt, respectively
- theta_air_zt, the potential temperature, is computed from absolute temperature at zt (read in netCDF file) and q_air_zt if ln_tair_pot==.false. (new namelist parameter)
LOGICAL :: ln_tair_pot ! temperature read in files ("sn_tair") is already potential temperature (not absolute)
- "blk_oce_1" passes latent heat flux as output argument, (affects: ABL/sbcabl.F90)
- "blk_oce_2" passes latent heat flux as input argument, (affects: ABL/sbcabl.F90)
- "blk_oce_2" input argument "pqsr" removed because not used, (affects: ABL/sbcabl.F90)
- "SBC/sbcblk_algo_*.F90": various improvements
- number of iterations now provided through namelist parameter into "&namsbc_blk"
- neutral transfer coefficients now as OPTIONAL output arguments
- SBC/sbc_ice.F90: pp_cldf removed and declared into "sbc_phy" instead (affects: SBC/sbccpl.F90, SBC/sbcblk.F90, SBC/sbcmod.F90)
- SBC/sbc_oce.F90: declaration of global public arrays theta_air_zt and q_air_zt, potential air temperature and specific humidity at zt, respectively
- DOM/phycst.F90: add vkarmn2, square of von Karmán constant
...
C] Further development of the STATION_ASF test-case
(boolean sanity-check of the SBCBLK interface and sea-ice support "key_si3")
Documentation updates
...
Preview
...
Tests
Test-case associated with this development:
- Test case name: STATION_ASF (C1D meets SAS). See https://github.com/NEMO-ocean/NEMO-examples/tree/master/STATION_ASF for a more complete introduction.
- Test case functionality: test-case STATION_ASF checks that all bulk algorithms available in NEMO, used to estimate the bulk transfer coefficients for turbulent air-sea and air-ice fluxes, are working properly. This is done by checking that all turbulent fluxes computed at the punctual location of STATION_ASF lie within a reasonable range.
- Test case setup: in STATION_ASF nemo.exe runs on one processor and needs only 2 lightweight netCDF files as input. These 2 files provide hourly time-series of sea-surface variables (SST, SSH), and surface atmospheric state (wind, temperature, humidity and downwelling radiative fluxes), respectively, at the punctual location of STATION_ASF. 1 year of simulation with STATION_ASF takes a few tens of seconds on 1 proc.
- Test case verification value: WILL BE boolean. Each computed turbulent flux (hourly time-series), namely evaporation, wind stress and sensible flux, will be checked for consistency during a whole year. This operation will be carried out with every bulk (air-sea and air-ice) parameterization algorithms available in NEMO, including the testing of different options: cool-skin/warm-layer and wave-pattern input).
- Status of the test case as for now: Exists on the official GitHub? for NEMO. Boolean output not ready yet, version for air-ice fluxes in progress.
Review
...