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.
#2175 (ENHANCE-05_SimonM-Harmonic_Analysis) – NEMO

Opened 5 years ago

Last modified 3 years ago

#2175 assigned Task

ENHANCE-05_SimonM-Harmonic_Analysis

Reported by: acc Owned by: smueller
Priority: high Milestone: Unscheduled
Component: DIA Version: trunk
Severity: minor Keywords: tides, harmonic_analysis
Cc:

Description (last modified by smueller)

Summary

Action ENHANCE-05_SimonM-Harmonic_Analysis
PI(S) Simon Müller, Nicolas Bruneau
Digest This action will enhance the tidal harmonic-analysis diagnostics available in the NEMO framework: the replacement of the current implementation by a facility for generic multiple linear regression will enable tidal harmonic analyses of three-dimensional fields, make harmonic analyses across model restarts possible, and improve the computational efficiency of the analysis, as well as facilitate a wide range of non-tidal regression analyses.
Dependencies
Branch NEMO/branches/2019/dev_r11879_ENHANCE-05_SimonM-Harmonic_Analysis/, utils/tools_dev_r11751_ENHANCE-05_SimonM-Harmonic_Analysis/
Previewer(s) Jérôme Chanut
Reviewer(s) Jérôme Chanut
Wiki wiki:2019WP/ENHANCE-05_SimonM-Harmonic_Analysis

Abstract

This action will enhance the tidal harmonic-analysis diagnostics available in the NEMO framework: the replacement of the current implementation by a facility for generic multiple linear regression will enable tidal harmonic analyses of three-dimensional fields, make harmonic analyses across model restarts possible, and improve the computational efficiency of the analysis, as well as facilitate a wide range of non-tidal regression analyses.

Description

The harmonic-analysis diagnostics available in the current reference code is limited to two-dimensional fields (surface only), is activated via a preprocessor key, uses unconventional namelist parameter names, uses a mixture of dynamic and static allocation for large arrays, and appears to be computationally inefficient. Further, while being based on multiple linear regression, the current implementation does not provide for regressions on harmonic components other than tidal constituents.

This action will replace the current tidal harmonic-analysis diagnostics with a generic implementation for multiple linear regression analysis that can be utilised for both tidal harmonic and non-tidal regression analyses. This implementation will provide harmonic-analysis diagnostics enhancements previously tested in a pre-4.0beta NEMO version by N. Bruneau: the analysis of three-dimensional fields, analysis across model restarts, and improved computational efficiency.

In contrast to both the existing harmonic analysis diagnostics in the reference NEMO code and the enhanced pre-4.0beta version by N. Bruneau, the new implementation will make extensive use of XIOS and an off-line tool. This approach should make it possible to simplify the regression analysis-related Fortran module in the core NEMO code, to relocate the regression-analysis configuration to XIOS configuration files, and to enable the selection of any model field handled by XIOS for analysis.

Implementation

See 2019WP/ENHANCE-05_SimonM-Harmonic_Analysis

Reference manual and web pages updates

See 2019WP/ENHANCE-05_SimonM-Harmonic_Analysis

Commit History (37)

ChangesetAuthorTimeChangeLog
12184smueller2019-12-11T14:35:26+01:00

Merging of the developments in /NEMO/branches/2019/dev_r11879_ENHANCE-05_SimonM-Harmonic_Analysis@12122 with respect to /NEMO/trunk@12072 into /NEMO/branches/2019/dev_r12072_MERGE_OPTION2_2019 (tickets #2175 and #2194)

12122smueller2019-12-09T12:29:10+01:00

Modifications to make modules diadetide and diamlr compilable and compatible with module tide_mod (tickets #2175 and #2194)

12118smueller2019-12-09T11:38:19+01:00

Belated removal of the file src/OCE/SBC/tide_mod.F90 (tickets #2175 and #2194) This file removal has been omitted from the merging of the developments in /NEMO/branches/2019/dev_r10742_ENHANCE-12_SimonM-Tides@12096 with respect to /NEMO/trunk@12072 into /NEMO/branches/2019/dev_r11879_ENHANCE-05_SimonM-Harmonic_Analysis (changeset [12117]).

12117smueller2019-12-09T10:46:17+01:00

Merging of the developments in /NEMO/branches/2019/dev_r10742_ENHANCE-12_SimonM-Tides@12096 with respect to /NEMO/trunk@12072 into /NEMO/branches/2019/dev_r11879_ENHANCE-05_SimonM-Harmonic_Analysis (tickets #2175 and #2194)

12097smueller2019-12-06T16:55:50+01:00

Addition of AGRIF directives to enable compilation with key_agrif (ticket #2175)

12075smueller2019-12-05T18:07:12+01:00

Synchronizing with /NEMO/trunk@12072 (ticket #2175)

12066smueller2019-12-05T12:19:06+01:00

Synchronizing with /utils/tools@11926 (ticket #2175)

12033smueller2019-12-03T11:04:00+01:00

Correction of the inclusion of regression coefficients in the output file and minor adjustments of standard output (ticket #2175)

12023smueller2019-12-02T12:33:38+01:00

Activation of the computation of daily M2-detided averages in reference configuration AMM12 (ticket #2175)

12022smueller2019-12-02T12:13:38+01:00

Alternative implementation for the computation of daily detided averages (currently M2-detided averages only) of model diagnostics (ticket #2175)

12018smueller2019-11-29T20:45:51+01:00

Addition of a rudimentary tool for the postprocessing of intermediate model output for multiple-linear-regression analysis (see ticket #2175)

12014smueller2019-11-29T16:56:36+01:00

Further adjustment of the configuration of multiple-linear-regression analysis in reference configuration AMM12 (ticket #2175)

12013smueller2019-11-29T16:25:00+01:00

Adjustment of the configuration of multiple-linear-regression analysis in reference configuration AMM12 (ticket #2175)

12012smueller2019-11-29T16:06:26+01:00

Further modification that completes the enabling of the grid-type propagation started with [12010] (ticket #2175)

12011smueller2019-11-29T15:01:48+01:00

Update of the default configuration of multiple-linear-regression analysis (ticket #2175)

12010smueller2019-11-29T13:50:45+01:00

Enabling of the grid-type propagation from the analysed fields to the corresponding scalar-product fields in the intermediate output for multiple-linear-regression analysis (ticket #2175)

11983smueller2019-11-27T14:36:07+01:00

Removal of module diaharm (ticket #2175)

11975smueller2019-11-27T11:41:27+01:00

Addition of further metadatum in multiple-linear-regression analysis configuration for tidal harmonic analysis (ticket #2175)

11974smueller2019-11-27T10:58:20+01:00

Addition of metadata to the configuration of tidal harmonic-regressor pairs for multiple-linear-regression analysis (ticket #2175)

11972smueller2019-11-26T19:44:40+01:00

Inclusion of minimum, maximum, and average values of the time variable available to compute regressors (diamlr_time) in the intermediate-data output for multiple-linear-regression analysis (ticket #2175)

11971smueller2019-11-26T18:17:21+01:00

Inclusion of average regressor values, regressor metadata, and references to the analysed fields in the intermediate-data output for multiple-linear-regression analysis (ticket #2175)

11961smueller2019-11-25T20:40:46+01:00

Adjustments to variable names and overlong lines (ticket #2175)

11959smueller2019-11-25T16:25:20+01:00

Activation of multiple-linear-regression analysis in reference configuration AMM12 (ticket #2175)

11956smueller2019-11-22T19:38:52+01:00

Inclusion of an example configuration of multiple-linear-regression analysis (ticket #2175)

11950smueller2019-11-22T16:44:46+01:00

Addition of a placeholder substitution mechanism for the inclusion of tidal-constituent parameters, which are available from the tidal-forcing implementation, in regressor expressions for multiple-linear-regression analysis (see ticket #2175)

11942smueller2019-11-21T11:13:52+01:00

Integration of a version of the IOM context setup for multiple-linear-regression analysis that results in the output of a full set of intermediate data for a configured regression analysis (see ticket #2175)

11925smueller2019-11-18T15:49:54+01:00

Extension of the test for the existence of a regression-analysis configuration in the IOM context setup for multiple-linear-regression analysis (ticket #2175)

11922smueller2019-11-15T21:12:45+01:00

Addition of output of the elapsed model time for multiple-linear-regression analysis (ticket #2175)

11921smueller2019-11-15T19:03:39+01:00

Addition of a test for the existence of a regression-analysis configuration to the IOM context setup for multiple-linear-regression analysis (ticket #2175)

11911smueller2019-11-15T13:54:21+01:00

Addition of a quotation mark that was missing in module diamlr (ticket #2175)

11910smueller2019-11-15T13:38:16+01:00

Inclusion of a skeletal version of the new module diamlr that will be used to manage the IOM context for multiple-linear-regression analysis of model fields (ticket #2175)

11909smueller2019-11-14T21:31:36+01:00

Detachment of the context-definition closure from subroutine iom_init of module iom to enable additional context definition outside subroutine iom_init (ticket #2175).

The closure of the context definition is now available in the new public subroutine iom_init_closedef of module iom. By default, this subroutine is called by subroutine iom_init, so that the default behaviour of iom_init remains unchanged. Optionally, subroutine iom_init can now be made to keep the context definition open by setting the optional argument ld_closedef to .FALSE.; this enables continued definition of the context until subroutine iom_init_closedef is explicitly called.

11887smueller2019-11-11T13:33:26+01:00

Modification of the externals definition for the tools directory in the NEMO development branch for action ENHANCE-05_SimonM-Harmonic_Analysis to point to the corresponding tool development branch (ticket #2175)

11886smueller2019-11-11T13:26:18+01:00

Reversal of an externals-definition modification (changeset [11885]) made in the wrong development branch (ticket #2175)

11885smueller2019-11-11T12:40:47+01:00

Modification of the externals definition for the tools directory in the NEMO development branch for action ENHANCE-05_SimonM-Harmonic_Analysis to point to the corresponding tool development branch (ticket #2175)

11882smueller2019-11-08T22:33:41+01:00

Inception of a tool development branch for action ENHANCE-05_SimonM-Harmonic_Analysis (2019 WP), see ticket #2175

11881smueller2019-11-08T22:21:27+01:00

Inception of a development branch for action ENHANCE-05_SimonM-Harmonic_Analysis (2019 WP), see ticket #2175

Change History (52)

comment:1 Changed 5 years ago by smueller

  • Description modified (diff)
  • Keywords tides added; Tides removed

comment:2 Changed 5 years ago by nemo

  • Priority changed from low to high

comment:3 Changed 5 years ago by smueller

  • Keywords harmonic_analysis added; harmonic analysis removed

comment:4 Changed 5 years ago by smueller

  • Status changed from new to assigned

comment:5 Changed 5 years ago by smueller

  • Description modified (diff)

comment:6 Changed 5 years ago by smueller

  • Description modified (diff)
  • wp_comment set to Preview requested

comment:7 Changed 5 years ago by smueller

  • mp_status set to no

comment:8 Changed 5 years ago by smueller

  • mp_status no deleted

comment:9 Changed 4 years ago by smueller

In 11881:

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

comment:10 Changed 4 years ago by smueller

In 11882:

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

comment:11 Changed 4 years ago by smueller

In 11885:

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

comment:12 Changed 4 years ago by smueller

In 11886:

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

comment:13 Changed 4 years ago by smueller

In 11887:

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

comment:14 Changed 4 years ago by smueller

In 11909:

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

comment:15 Changed 4 years ago by smueller

In 11910:

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

comment:16 Changed 4 years ago by smueller

In 11911:

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

comment:17 Changed 4 years ago by smueller

In 11921:

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

comment:18 Changed 4 years ago by smueller

In 11922:

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

comment:19 Changed 4 years ago by smueller

In 11925:

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

comment:20 Changed 4 years ago by smueller

In 11942:

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

comment:21 Changed 4 years ago by smueller

  • branch_review changed from failed to pending
  • wp_comment changed from Preview requested to Implementation in progress

comment:22 Changed 4 years ago by smueller

In 11950:

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

comment:23 Changed 4 years ago by smueller

In 11956:

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

comment:24 Changed 4 years ago by smueller

In 11959:

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

comment:25 Changed 4 years ago by smueller

In 11961:

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

comment:26 Changed 4 years ago by smueller

In 11971:

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

comment:27 Changed 4 years ago by smueller

In 11972:

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

comment:28 Changed 4 years ago by smueller

In 11974:

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

comment:29 Changed 4 years ago by smueller

In 11975:

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

comment:30 Changed 4 years ago by smueller

In 11983:

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

comment:31 Changed 4 years ago by smueller

In 12010:

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

comment:32 Changed 4 years ago by smueller

In 12011:

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

comment:33 Changed 4 years ago by smueller

In 12012:

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

comment:34 Changed 4 years ago by smueller

In 12013:

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

comment:35 Changed 4 years ago by smueller

In 12014:

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

comment:36 Changed 4 years ago by smueller

In 12018:

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

comment:37 Changed 4 years ago by smueller

In 12022:

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

comment:38 Changed 4 years ago by smueller

In 12023:

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

comment:39 Changed 4 years ago by smueller

In 12033:

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

comment:40 Changed 4 years ago by smueller

  • Description modified (diff)

comment:41 Changed 4 years ago by smueller

In 12066:

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

comment:42 Changed 4 years ago by smueller

In 12075:

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

comment:43 Changed 4 years ago by smueller

In 12097:

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

comment:44 Changed 4 years ago by smueller

In 12117:

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

comment:45 Changed 4 years ago by smueller

In 12118:

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

comment:46 Changed 4 years ago by smueller

In 12122:

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

comment:47 Changed 4 years ago by smueller

  • wp_comment changed from Implementation in progress to Implementation complete; developments merged with ENHANCE-12_SimonM-Tides developments; testing in progress

comment:48 Changed 4 years ago by smueller

In 12184:

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

comment:49 Changed 4 years ago by smueller

  • Description modified (diff)
  • mp_status changed from no to yes
  • wp_comment changed from Implementation complete; developments merged with ENHANCE-12_SimonM-Tides developments; testing in progress to Implementation complete; developments merged with ENHANCE-12_SimonM-Tides developments; reference manual update in progress

comment:50 Changed 3 years ago by smueller

  • Description modified (diff)

comment:51 Changed 3 years ago by smueller

  • wp_comment changed from Implementation complete; developments merged with ENHANCE-12_SimonM-Tides developments; reference manual update in progress to Implementation complete; developments merged with the trunk; reference manual update deferred to 2020-WP action ENHANCE-11_smueller_DIAMLR.

comment:52 Changed 3 years ago by nemo

  • Milestone changed from 2019 WP to Unscheduled
Note: See TracTickets for help on using tickets.