Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix for fractional_seaice option, again #1422

Merged
merged 5 commits into from
Mar 1, 2021
Merged

Fix for fractional_seaice option, again #1422

merged 5 commits into from
Mar 1, 2021

Conversation

weiwangncar
Copy link
Collaborator

@weiwangncar weiwangncar commented Feb 28, 2021

TYPE: bug fix

KEYWORDS: fractional seaice, MM5 and revised MM5 surface layer schemes, uninitialized local arrays

SOURCE: internal

DESCRIPTION OF CHANGES:
Problem:
Intermittent model failure when fractional_seaice is turned with nesting, with errors like 'invalid memory reference'.

Solution:
Two local arrays, qsfc_sea (which causes the problem), and znt_sea are not initialized, and somehow the problem only shows up in nesting. This should fix one of the comparison test, 60NE, but may not fix test 07NE, due to use of urban physics option 2.

LIST OF MODIFIED FILES:
M phys/module_surface_driver.F

TESTS CONDUCTED:

  1. Do mods fix problem? Partially. It should fix model failure, and nesting bit-for-bit test with seaice flag on.
  2. Jenkins tests are passing.

RELEASE NOTE: Part of fix in order to turn on fractional_seaice flag by default.

@weiwangncar weiwangncar requested review from a team as code owners February 28, 2021 22:32
@weiwangncar weiwangncar changed the base branch from master to develop February 28, 2021 22:32
@davegill
Copy link
Contributor

davegill commented Mar 1, 2021

jenkins

Please find result of the WRF regression test cases in the attachment. This build is for Commit ID: bfbe51a13da10476b080d0d022d6f287c6d6c251, requested by: weiwangncar for PR: https://github.com/wrf-model/WRF/pull/1422. For any query please send e-mail to David Gill.

    Test Type              | Expected  | Received |  Failed
    = = = = = = = = = = = = = = = = = = = = = = = =  = = = =
    Number of Tests        : 19           18
    Number of Builds       : 48           46
    Number of Simulations  : 163           161        0
    Number of Comparisons  : 103           102        0

    Failed Simulations are: 
    None
    Which comparisons are not bit-for-bit: 
    None

@davegill
Copy link
Contributor

davegill commented Mar 1, 2021

TYPE: bug fix

KEYWORDS: fractional seaice, MM5 and revised MM5 surface layer schemes, uninitialized local arrays

SOURCE: internal

DESCRIPTION OF CHANGES:
Problem:
Intermittent model failure when fractional_seaice is turned with nesting, with errors like 'invalid memory reference'.

Solution:
Two local arrays, qsfc_sea (which causes the problem), and znt_sea are not initialized, and somehow the problem
only shows up in nesting. This is an intermittent failure, and has not shown up after this initialization. This is likely a
latent error (uninitialized variables) that was exposed by the original seaice flag update.

LIST OF MODIFIED FILES:
M phys/module_surface_driver.F

TESTS CONDUCTED:

  1. Fixes intermittent model failure with nest and with seaice flag on.
  2. Jenkins tests are passing.

@davegill davegill merged commit f87b449 into wrf-model:develop Mar 1, 2021
kkeene44 added a commit that referenced this pull request Apr 14, 2021
…real cases (#1468)

TYPE: no impact

KEYWORDS: fractional_seaice, registry, Registry.EM_COMMON, namelist.input, SLAB

SOURCE: internal

DESCRIPTION OF CHANGES:
Problem:
The namelist parameter "fractional_seaice" was recently modified in the Registry.EM_COMMON file to be set to "on"
(1) by default (commit 0fff69a, PR #1401 "Change default fractional_seaice option from 0 to 1". However, if
using the SLAB scheme, fractional_seaice must be turned off, which causes problems for some of the default
idealized cases. Additionally, some other cases where users are running with the SLAB scheme (and not realizing it's
turned on by default), would cause lots of user difficulty and confusion.

Solution:
Set fractional_seaice back to 0 (off) in Registry.EM_COMMON, but add it (and turned on) to three of the default
namelists in the test/em_real directory as examples.

LIST OF MODIFIED FILES:
M test/em_real/namelist.input
M test/em_real/namelist.input.global
M test/em_real/namelist.input.jan00
M Registry/Registry.EM_COMMON

TESTS CONDUCTED:

The namelist changes have no impact on the build or run phases of the model.
When fractional seaice was activated by default, this uncovered several problems that were previously addressed.
Reverting the default fractional seaice setting back to zero (OFF) is not problematic.
f87b449, #1422 "Fix for fractional_seaice option, again"
476990a, #1457 "Fix for fractional seaice using MYJ and QNSE surface layer with MYNN PBL"
vlakshmanan-scala pushed a commit to scala-computing/WRF that referenced this pull request Apr 4, 2024
TYPE: bug fix

KEYWORDS: fractional seaice, MM5 and revised MM5 surface layer schemes, uninitialized local arrays

SOURCE: internal

DESCRIPTION OF CHANGES:
Problem:
Intermittent model failure when fractional_seaice is turned with nesting, with errors like 'invalid memory reference'.

Solution:
Two local arrays, qsfc_sea (which causes the problem), and znt_sea are not initialized, and somehow the problem only shows up in nesting. This should fix one of the comparison test, 60NE, but may not fix test 07NE, due to use of urban physics option 2.

LIST OF MODIFIED FILES: 
M     phys/module_surface_driver.F

TESTS CONDUCTED: 
1. Do mods fix problem? Partially. It should fix model failure, and nesting bit-for-bit test with seaice flag on. 
2. Jenkins tests are passing.

RELEASE NOTE: Part of fix in order to turn on fractional_seaice flag by default.
vlakshmanan-scala pushed a commit to scala-computing/WRF that referenced this pull request Apr 4, 2024
…real cases (wrf-model#1468)

TYPE: no impact

KEYWORDS: fractional_seaice, registry, Registry.EM_COMMON, namelist.input, SLAB

SOURCE: internal

DESCRIPTION OF CHANGES:
Problem:
The namelist parameter "fractional_seaice" was recently modified in the Registry.EM_COMMON file to be set to "on"
(1) by default (commit 0fff69a, PR wrf-model#1401 "Change default fractional_seaice option from 0 to 1". However, if
using the SLAB scheme, fractional_seaice must be turned off, which causes problems for some of the default
idealized cases. Additionally, some other cases where users are running with the SLAB scheme (and not realizing it's
turned on by default), would cause lots of user difficulty and confusion.

Solution:
Set fractional_seaice back to 0 (off) in Registry.EM_COMMON, but add it (and turned on) to three of the default
namelists in the test/em_real directory as examples.

LIST OF MODIFIED FILES:
M test/em_real/namelist.input
M test/em_real/namelist.input.global
M test/em_real/namelist.input.jan00
M Registry/Registry.EM_COMMON

TESTS CONDUCTED:

The namelist changes have no impact on the build or run phases of the model.
When fractional seaice was activated by default, this uncovered several problems that were previously addressed.
Reverting the default fractional seaice setting back to zero (OFF) is not problematic.
f87b449, wrf-model#1422 "Fix for fractional_seaice option, again"
476990a, wrf-model#1457 "Fix for fractional seaice using MYJ and QNSE surface layer with MYNN PBL"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants