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 WRFDA reading of global attributes from netcdf input #258

Merged
merged 1 commit into from
May 12, 2017

Conversation

jamiebresch
Copy link
Contributor

TYPE: bug fix

KEYWORDS: WRFDA, wrf_get_dom_ti_integer, ncd_ext_get_dom_ti_integer

SOURCE: internal

DESCRIPTION OF CHANGES:
When using ncd_ext_get_dom_ti_integer to get the global attribute,
only root processor gets the correct value, other processors returns
with the WRF_WARN_BAD_DATA_HANDLE error.
The problem is fixed by calling wrf_get_dom_ti_integer instead.

For HYBRID_OPT=2 case, root processor gets hybrid_opt=2 while other
processors end up with hybrid_opt=0.

LIST OF MODIFIED FILES:
M var/da/da_main/da_med_initialdata_input.inc
M var/da/da_main/da_wrfvar_io.f90

TESTS CONDUCTED:
Before the fix, the 3dvar/hybrid_opt=2 system have been cycled for ~3 weeks
until I 'accidentally' look at rsl.out from non-root processors...

…er for wrf_get_dom_ti_integer

modified:   var/da/da_main/da_med_initialdata_input.inc
modified:   var/da/da_main/da_wrfvar_io.f90
Copy link
Contributor

@mkavulich mkavulich left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved by wrf-dev committee

@jamiebresch jamiebresch merged commit db7841c into wrf-model:master May 12, 2017
@jamiebresch jamiebresch deleted the wrfda_rd_glb_attr branch May 12, 2017 16:40
mkavulich pushed a commit that referenced this pull request May 18, 2017
TYPE: bug fix

KEYWORDS: WRFDA, wrf_get_dom_ti_integer, ncd_ext_get_dom_ti_integer

SOURCE: internal

DESCRIPTION OF CHANGES:
When using ncd_ext_get_dom_ti_integer to get the global attribute,
only root processor gets the correct value, other processors returns
with the WRF_WARN_BAD_DATA_HANDLE error.
The problem is fixed by calling wrf_get_dom_ti_integer instead.

For HYBRID_OPT=2 case, root processor gets hybrid_opt=2 while other
processors end up with hybrid_opt=0.

LIST OF MODIFIED FILES:
M var/da/da_main/da_med_initialdata_input.inc
M var/da/da_main/da_wrfvar_io.f90

TESTS CONDUCTED:
Before the fix, the 3dvar/hybrid_opt=2 system have been cycled for ~3 weeks
until I 'accidentally' look at rsl.out from non-root processors...
(cherry picked from commit db7841c)
mkavulich added a commit that referenced this pull request May 26, 2017
TYPE: bug fix

KEYWORDS: WRFDA, 4DVAR, compile, PGI

SOURCE: internal

DESCRIPTION OF CHANGES: Commit db7841c (Fix WRFDA reading of global attributes from netcdf input #258) introduced the subroutine "wrf_get_dom_ti_integer" to var/da/da_main/da_med_initialdata_input.inc. Because of naming conflicts with WRFPLUS, the code will not compile for 4DVAR when using certain PGI compilers (and perhaps others), even though GNU and Intel have no problem with it. This is solved by adding this subroutine to the script da_name_space.pl, which is part of the WRFDA build system that addresses this very problem: it renames certain subroutines when compiling for 4DVAR to avoid this conflict and allow the code to compile successfully.

LIST OF MODIFIED FILES:
M var/build/da_name_space.pl

TESTS CONDUCTED: WRFDA 4DVAR now compiles for PGI 15.1 (which is the compiler that exhibited the problem). WTF passes with flying colors.
mkavulich pushed a commit that referenced this pull request Aug 15, 2017
TYPE: bug fix

KEYWORDS: WRFDA, wrf_get_dom_ti_integer, ncd_ext_get_dom_ti_integer

SOURCE: internal

DESCRIPTION OF CHANGES:
When using ncd_ext_get_dom_ti_integer to get the global attribute,
only root processor gets the correct value, other processors returns
with the WRF_WARN_BAD_DATA_HANDLE error.
The problem is fixed by calling wrf_get_dom_ti_integer instead.

For HYBRID_OPT=2 case, root processor gets hybrid_opt=2 while other
processors end up with hybrid_opt=0.

LIST OF MODIFIED FILES:
M var/da/da_main/da_med_initialdata_input.inc
M var/da/da_main/da_wrfvar_io.f90

TESTS CONDUCTED:
Before the fix, the 3dvar/hybrid_opt=2 system have been cycled for ~3 weeks
until I 'accidentally' look at rsl.out from non-root processors...
(cherry picked from commit db7841c)
mkavulich added a commit that referenced this pull request Aug 15, 2017
TYPE: bug fix

KEYWORDS: WRFDA, 4DVAR, compile, PGI

SOURCE: internal

DESCRIPTION OF CHANGES: Commit db7841c (Fix WRFDA reading of global attributes from netcdf input #258) introduced the subroutine "wrf_get_dom_ti_integer" to var/da/da_main/da_med_initialdata_input.inc. Because of naming conflicts with WRFPLUS, the code will not compile for 4DVAR when using certain PGI compilers (and perhaps others), even though GNU and Intel have no problem with it. This is solved by adding this subroutine to the script da_name_space.pl, which is part of the WRFDA build system that addresses this very problem: it renames certain subroutines when compiling for 4DVAR to avoid this conflict and allow the code to compile successfully.

LIST OF MODIFIED FILES:
M var/build/da_name_space.pl

TESTS CONDUCTED: WRFDA 4DVAR now compiles for PGI 15.1 (which is the compiler that exhibited the problem). WTF passes with flying colors.
(cherry picked from commit 49ec556)
mkavulich pushed a commit that referenced this pull request Aug 23, 2017
TYPE: bug fix

KEYWORDS: WRFDA, wrf_get_dom_ti_integer, ncd_ext_get_dom_ti_integer

SOURCE: internal

DESCRIPTION OF CHANGES:
When using ncd_ext_get_dom_ti_integer to get the global attribute,
only root processor gets the correct value, other processors returns
with the WRF_WARN_BAD_DATA_HANDLE error.
The problem is fixed by calling wrf_get_dom_ti_integer instead.

For HYBRID_OPT=2 case, root processor gets hybrid_opt=2 while other
processors end up with hybrid_opt=0.

LIST OF MODIFIED FILES:
M var/da/da_main/da_med_initialdata_input.inc
M var/da/da_main/da_wrfvar_io.f90

TESTS CONDUCTED:
Before the fix, the 3dvar/hybrid_opt=2 system have been cycled for ~3 weeks
until I 'accidentally' look at rsl.out from non-root processors...
(cherry picked from commit db7841c)

(cherry picked from commit 3747452)
mkavulich added a commit that referenced this pull request Aug 23, 2017
TYPE: bug fix

KEYWORDS: WRFDA, 4DVAR, compile, PGI

SOURCE: internal

DESCRIPTION OF CHANGES: Commit db7841c (Fix WRFDA reading of global attributes from netcdf input #258) introduced the subroutine "wrf_get_dom_ti_integer" to var/da/da_main/da_med_initialdata_input.inc. Because of naming conflicts with WRFPLUS, the code will not compile for 4DVAR when using certain PGI compilers (and perhaps others), even though GNU and Intel have no problem with it. This is solved by adding this subroutine to the script da_name_space.pl, which is part of the WRFDA build system that addresses this very problem: it renames certain subroutines when compiling for 4DVAR to avoid this conflict and allow the code to compile successfully.

LIST OF MODIFIED FILES:
M var/build/da_name_space.pl

TESTS CONDUCTED: WRFDA 4DVAR now compiles for PGI 15.1 (which is the compiler that exhibited the problem). WTF passes with flying colors.
(cherry picked from commit 49ec556)

(cherry picked from commit c7e9d11)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants