New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
2020WP/ASINTER-04_laurent_bulk_ice – NEMO
wiki:2020WP/ASINTER-04_laurent_bulk_ice

Version 17 (modified by laurent, 3 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.

  1. Summary
  2. Description
  3. Implementation
  4. Documentation updates
  5. Preview
  6. Tests
  7. Review

Summary

Action More realistic air-ice/snow turbulent flux estimates over sea-ice
PI(S) Laurent Brodeau @ Ocean Next
Digest Implementation of a bulk-transfer-coefficient parameterization for sea-ice-covered regions. This parameterization should consider sea-ice roughness and be able to handle extremely stable surface atmospheric layer conditions typical of sea-ice-covered regions.
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 of the general SBCBKK 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

Development of the general SBCBLK interface

(introduction of proper bulk parameterizations for ice-air exchanges, new air-sea bulk parameterizations + 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 "#if defined key_si3"
    • new 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 ()
         LOGICAL  ::   ln_Cx_ice_cst             ! use constant air-ice bulk transfer coefficients
         REAL(wp) ::   rn_Cd_i, rn_Ce_i, rn_Ch_i ! constant values for     "       "      "
         LOGICAL  ::   ln_Cx_ice_LU12            ! air-ice bulk transfer coefficients based on Lupkes et al., 2012)
         LOGICAL  ::   ln_Cx_ice_LG15            ! air-ice bulk transfer coefficients based on Lupkes & Gryanik, 2015)
      
      
    • 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" 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)

....

  • "pp_cldf" declared into "sbc_phy" (affects: SBC/sbccpl.F90, SBC/sbccpl.F90)
  • "SBC/sbcblk_algo_*.F90": various improvements
    • number of iterations now provided through namelist parameter into "&namsbc_blk"
    • neutral transfer coeeficients now as OPTIONAL output arguments

...

  • "blk_oce_2" passes latent heat flux, (outside SBC: ABL/sbcabl.F90)
  • "blk_ice_1" & "blk_ice_2" new global public arrays: "theta_air_zt, q_air_zt", (outside SBC: ICE/icesbc.F90)

...

Development of the STATION_ASF test-case

(boolean sanity-check of the SBCBLK interface and sea-ice support "key_si3")

Documentation updates

Error: Failed to load processor box
No macro or processor named 'box' found

...

Preview

Error: Failed to load processor box
No macro or processor named 'box' found

...

Tests

Error: Failed to load processor box
No macro or processor named 'box' found

Test-case associated with this development:

  • 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

Error: Failed to load processor box
No macro or processor named 'box' found

...