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

Yaml tables for ensembles and nests #1585

Open
wants to merge 13 commits into
base: main
Choose a base branch
from

Conversation

uramirez8707
Copy link
Contributor

Description
Adds the ability for each ensemble/nest to have its own diag/field/data yaml tables.

This will allow users to specify a unique forcing file for each ensemble member (Fixes #1568) and to specify a different file frequency for multiple grids (Fixes #1573)

For example, for a run with 2 ensemble members, fms will search for diag_table_ens_01.yaml and diag_table_ens_02.yaml.
Similarly, for a run with a nest, fms will search for diag_table.yaml (for the parent grid) and diag_table_nest_01.yaml (for the nest grid), nest_01 can be whatever is passed in to fms via the set_filename_appendix call.

Fixes # (issue)

How Has This Been Tested?
CI including new tests

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • Any dependent changes have been merged and published in downstream modules
  • New check tests, if applicable, are included
  • make distcheck passes

@@ -591,9 +591,18 @@ subroutine read_table_yaml(data_table)
integer :: nentries, mentries
integer :: i
character(len=50) :: buffer
character(len=255) :: filename !< Name of the expected data_table.yaml
Copy link
Contributor

Choose a reason for hiding this comment

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

This should use the filename length macro in platform.F90

data_override/include/data_override.inc Show resolved Hide resolved
@@ -381,10 +382,17 @@ subroutine diag_yaml_object_init(diag_subset_output)
!! outputing data at every frequency)
character(len=:), allocatable :: filename!< Diag file name (for error messages)
logical :: is_instantaneous !< .True. if the file is instantaneous (i.e no averaging)
character(len=255) :: yamlfilename !< Name of the expected diag_table.yaml
Copy link
Contributor

Choose a reason for hiding this comment

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

This should use the filename length macro in platform.F90

diag_manager/fms_diag_yaml.F90 Show resolved Hide resolved
Comment on lines 609 to 610
character(len=255) :: filename !< Name of the expected field_table.yaml

Copy link
Contributor

Choose a reason for hiding this comment

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

filename macro

field_manager/field_manager.F90 Show resolved Hide resolved
@uramirez8707 uramirez8707 marked this pull request as ready for review September 18, 2024 20:38
@uramirez8707
Copy link
Contributor Author

@bensonr I think I addressed all your comments in 1b2e050

bensonr
bensonr previously approved these changes Sep 19, 2024
Copy link
Contributor

@bensonr bensonr left a comment

Choose a reason for hiding this comment

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

Thanks for making the changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants