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/ENHANCE-14_smueller_OSMOSIS_streamlining (diff) – NEMO

Changes between Version 3 and Version 4 of 2020WP/ENHANCE-14_smueller_OSMOSIS_streamlining


Ignore:
Timestamp:
2020-05-18T17:52:36+02:00 (4 years ago)
Author:
smueller
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • 2020WP/ENHANCE-14_smueller_OSMOSIS_streamlining

    v3 v4  
    1 = Name and subject of the action 
     1= ENHANCE-14_smueller_OSMOSIS_streamlining 
    22 
    33Last edition: '''[[Wikinfo(changed_ts)]]''' by '''[[Wikinfo(changed_by)]]''' 
     
    2626=== Implementation 
    2727 
    28 {{{#!box width=35em help 
    29 Describe flow chart of the changes in the code. \\ 
    30 List the Fortran modules and subroutines to be created/edited/deleted. \\ 
    31 Detailed list of new variables to be defined (including namelists), \\ 
    32 give for each the chosen name and description wrt coding rules. 
    33 }}} 
     28The development branch for 2019-WP action [[wiki:2019WP/VALID-02_GeorgeN-evalOSMOSIS|VALID-02_GeorgeN-evalOSMOSIS]] has recently been synchronized with source:/NEMO/trunk@12925 (changesets [12928] and [12934]). Thus, it should be readily possible to cleanly transfer the code developments made in action [[wiki:2019WP/VALID-02_GeorgeN-evalOSMOSIS|VALID-02_GeorgeN-evalOSMOSIS]] into a new development branch that branches off from an up-to-date version of source:/NEMO/trunk in order to form the basis for the source-code "streamlining" activities of action [[wiki:2020WP/ENHANCE-14_smueller_OSMOSIS_streamlining]]. 
    3429 
    35 ''...'' 
     30The main purpose of action [[wiki:2020WP/ENHANCE-14_smueller_OSMOSIS_streamlining|ENHANCE-14_smueller_OSMOSIS_streamlining]] is the computational-efficiency enhancement of subroutine `zdf_osm` of module `zdfosm`. A preliminary analysis in the context of action [[wiki:2019WP/VALID-02_GeorgeN-evalOSMOSIS|VALID-02_GeorgeN-evalOSMOSIS]] suggested a substantial computational cost resulting from the replacement of the established vertical-mixing scheme by the version of the OSMOSIS surface-boundary-layer scheme developed in this 2019-WP action. In [[wiki:2020WP/ENHANCE-14_smueller_OSMOSIS_streamlining|ENHANCE-14_smueller_OSMOSIS_streamlining]], using a suitable model configuration, a detailed timing analysis of subroutine `zdf_osm` is planned to be carried out, followed by a thorough review of the source code of module `zdfosm`. Based on this analysis and the source-code review, an exploration of modifications with apparent potential to reduce computational cost of subroutine `zdf_osm`, followed by the implementation of suitable computational-efficiency improvements, is proposed. 
     31 
     32Fruther "streamlining" of the source code of subroutine `zdf_osm` is proposed. This includes enhancements of the conformance with NEMO coding conventions and of code readability, as well as the enabling of the compilation of the `zdfosm` module in AGRIF-enabled configurations (the current version from the 2019-WP action [[wiki:2019WP/VALID-02_GeorgeN-evalOSMOSIS|VALID-02_GeorgeN-evalOSMOSIS]] fails to compile in the `SETTE` test configurations `AGRIF`, `ICE_AGRIF', and 'VORTEX'). 
     33 
     34Finally, activation of the OSMOSIS surface-boundary-layer scheme in at least one configuration of the `SETTE` test suite is proposed. 
    3635 
    3736=== Documentation updates 
    3837 
    39 {{{#!box width=55em help 
    40 Using previous parts, define the main changes to be done in the NEMO literature  
    41 (manuals, guide, web pages, …). 
    42 }}} 
    43  
    44 ''...'' 
     38No or only minor documentation updates are expected to result from this action. The "streamlining" activities are expected to transform the source code of module `zdfosm` without changing its function, and thus should not prompt any modification of the NEMO manual or user guide. However, inclusion of the `OSMOSIS` scheme in `SETTE`, for example through its activation in a reference configuration, may require minor updates of the respective documentation. 
    4539 
    4640== Preview