Changes between Version 5 and Version 6 of 2020WP/ENHANCE-14_smueller_OSMOSIS_streamlining
- Timestamp:
- 2020-05-27T16:16:27+02:00 (5 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
2020WP/ENHANCE-14_smueller_OSMOSIS_streamlining
v5 v6 22 22 === Description 23 23 24 Action [[wiki:2020WP/ENHANCE-14_smueller_OSMOSIS_streamlining|ENHANCE-14_smueller_OSMOSIS_streamlining]] forms one of two strands of work (action [[wiki:2020WP/PHYPRO-01_agn_OSMOSIS_science|PHYPRO-01_agn_OSMOSIS_science]] being the other) that follow up the 2019-WP action [[wiki:2019WP/VALID-02_GeorgeN-evalOSMOSIS|VALID-02-GeorgeN-evalOSMOSIS]], whose code developments have not yet been merged back into the trunk. This new action aims to update the implementation of the OSMOSIS surface-boundary-layer scheme resulting from action [[wiki:2019WP/VALID-02_GeorgeN-evalOSMOSIS|VALID-02_GeorgeN-evalOSMOSIS]] (as implemented in [source:/NEMO/branches/2019/dev_r11078_OSMOSIS_IMMERSE_Nurser/src/OCE/ZDF/zdfosm.F90]) by improving its computational efficiency, by making it compilable in `AGRIF`-enabled configurations, by improving its compliance with NEMO coding standards and readability, and by including it in the `SETTE` test suite.24 Action [[wiki:2020WP/ENHANCE-14_smueller_OSMOSIS_streamlining|ENHANCE-14_smueller_OSMOSIS_streamlining]] forms one of two strands of work (action [[wiki:2020WP/PHYPRO-01_agn_OSMOSIS_science|PHYPRO-01_agn_OSMOSIS_science]] being the other) that follow up the 2019-WP action [[wiki:2019WP/VALID-02_GeorgeN-evalOSMOSIS|VALID-02-GeorgeN-evalOSMOSIS]], whose code developments have not yet been merged back into the trunk. This new action aims to update the implementation of the OSMOSIS surface-boundary-layer scheme resulting from action [[wiki:2019WP/VALID-02_GeorgeN-evalOSMOSIS|VALID-02_GeorgeN-evalOSMOSIS]] (as implemented in [source:/NEMO/branches/2019/dev_r11078_OSMOSIS_IMMERSE_Nurser/src/OCE/ZDF/zdfosm.F90]) by improving its computational efficiency, by making it compilable in configurations that make use of [[http://agrif.imag.fr|AGRIF]], by improving its compliance with NEMO coding standards and readability, and by including it in the `SETTE` test suite. 25 25 26 26 === Implementation … … 30 30 The 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 31 32 Fruther "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').32 Fruther "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 [[http://agrif.imag.fr|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 33 34 34 Finally, activation of the OSMOSIS surface-boundary-layer scheme in at least one configuration of the `SETTE` test suite is proposed.