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

XIOS implementation of ParaGridIO (take 2) #751

Draft
wants to merge 40 commits into
base: develop
Choose a base branch
from

Conversation

jwallwork23
Copy link
Contributor

XIOS implementation of ParaGridIO (take 2)

Fixes #552
Supersedes #667

Task List

  • Defined the tests that specify a complete and functioning change (It may help to create a design specification & test specification)
  • Implemented the source code change that satisfies the tests
  • Documented the feature by providing worked example
  • Updated the README or other documentation
  • Completed the pre-Request checklist below

Change Description

Reimplementation of the ParaGridIO class using XIOS for I/O. It will automatically be used if nextSIM-DG is compiled with XIOS enabled.

The read and write methods formerly in the Xios handler class are moved to the XIOS implementation of ParaGridIO. This is because ModelArray is going to get XIOS-related functionality and we need to avoid circular dependencies.


Test Description

...


Pre-Request Checklist

  • The requirements of this pull request are fully captured in an issue or design specification and are linked and summarised in the description of this PR
  • No new warnings are generated
  • The documentation has been updated (or an issue has been created to track the corresponding change)
  • Methods and Tests are commented such that they can be understood without having to obtain additional context
  • This PR/Issue is labelled as a bug/feature/enhancement/breaking change
  • File dates have been updated to reflect modification date
  • This change conforms to the conventions described in the README

@jwallwork23 jwallwork23 added enhancement New feature or request ICCS Tasks or reviews for the ICCS team labels Dec 4, 2024
@jwallwork23 jwallwork23 self-assigned this Dec 4, 2024
jwallwork23 added a commit that referenced this pull request Dec 10, 2024
Refinement of #751

# Allow timestep to be set when XIOS handler is created

This PR makes a few minor modifications to the `Xios` handler object:
* Improve clarity of docstrings related to configuration.
* Allow the user to set the timestep, calendar type and context ID when
creating the `Xios` instance.
* Set the calendar origin and start as part of the configuration.
* Update tests accordingly.

These steps should make it easier to set up XIOS and reduce the amount
of additional boilerplate when using it to drive I/O rather than the
existing approach.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request ICCS Tasks or reviews for the ICCS team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Reimplement ParaGridIO using XIOS
1 participant