Skip to content

Add Inventory by Integer and storage of 2D field arrays - #435

Open
Thomas Bendall (tommbendall) wants to merge 5 commits into
MetOffice:mainfrom
tommbendall:inventory_int_mesh
Open

Add Inventory by Integer and storage of 2D field arrays#435
Thomas Bendall (tommbendall) wants to merge 5 commits into
MetOffice:mainfrom
tommbendall:inventory_int_mesh

Conversation

@tommbendall

@tommbendall Thomas Bendall (tommbendall) commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

PR Summary

Sci/Tech Reviewer:
Code Reviewer: Lottie Turner (@mo-lottieturner)

This PR adds some new inventory functionality:

  1. An inventory which stores objects based on an integer enumerator (as opposed to mesh or local_mesh)
  2. The ability to store 2D field arrays

This functionality will be used by LFRic-Apps #659 to reorganise the solver operators.

This PR basically copies the existing inventories but changes the key to be an integer enumerator rather than a mesh. Although most routines aren't currently used (e.g. the storage of operators) I thought it made more sense to be maximalist and keep all of the capability rather than needing to implement it later.

Blocks: LFRic-Apps #659

Code Quality Checklist

  • I have performed a self-review of my own code
  • My code follows the project's style guidelines
  • Comments have been included that aid understanding and enhance the readability of the code
  • My changes generate no new warnings
  • All automated checks in the CI pipeline have completed successfully

Testing

  • I have tested this change locally, using the LFRic Core rose-stem suite
  • If required (e.g. API changes) I have also run the LFRic Apps test suite using this branch
  • If any tests fail (rose-stem or CI) the reason is understood and acceptable (e.g. kgo changes)
  • I have added tests to cover new functionality as appropriate (e.g. system tests, unit tests, etc.)
  • Any new tests have been assigned an appropriate amount of compute resource and have been allocated to an appropriate testing group (i.e. the developer tests are for jobs which use a small amount of compute resource and complete in a matter of minutes)

trac.log

Test Suite Results - lfric_core - inventory_int_mesh/run1

Suite Information

Item Value
Suite Name inventory_int_mesh/run1
Suite User thomas.bendall
Workflow Start 2026-07-24T16:06:00
Groups Run developer
Dependency Reference Main Like
lfric_core tommbendall/lfric_core@inventory_int_mesh False
SimSys_Scripts MetOffice/SimSys_Scripts@cab3315 True

Task Information

✅ succeeded tasks - 433

Security Considerations

  • I have reviewed my changes for potential security issues
  • Sensitive data is properly handled (if applicable)
  • Authentication and authorisation are properly implemented (if applicable)

Performance Impact

  • Performance of the code has been considered and, if applicable, suitable performance measurements have been conducted

AI Assistance and Attribution

  • Some of the content of this change has been produced with the assistance of Generative AI tool name (e.g., Met Office Github Copilot Enterprise, Github Copilot Personal, ChatGPT GPT-4, etc) and I have followed the Simulation Systems AI policy (including attribution labels)

Github Copilot was used to implement these changes.

Documentation

  • Where appropriate I have updated documentation related to this change and confirmed that it builds correctly

PSyclone Approval

  • If you have edited any PSyclone-related code (e.g. PSyKAl-lite, Kernel interface, optimisation scripts, LFRic data structure code) then please contact the TCD Team

Sci/Tech Review

  • I understand this area of code and the changes being added
  • The proposed changes correspond to the pull request description
  • Documentation is sufficient (do documentation papers need updating)
  • Sufficient testing has been completed

(Please alert the code reviewer via a tag when you have approved the SR)

Code Review

  • All dependencies have been resolved
  • Related Issues have been properly linked and addressed
  • CLA compliance has been confirmed
  • Code quality standards have been met
  • Tests are adequate and have passed
  • Documentation is complete and accurate
  • Security considerations have been addressed
  • Performance impact is acceptable

@tommbendall Thomas Bendall (tommbendall) added the Linked Apps This PR is linked to a MetOffice/lfric_apps PR label Jul 24, 2026
@tommbendall
Thomas Bendall (tommbendall) marked this pull request as ready for review July 24, 2026 16:48
@tommbendall
Thomas Bendall (tommbendall) requested a review from a team as a code owner July 24, 2026 16:48
@tommbendall
Thomas Bendall (tommbendall) requested review from mo-lucy-gordon and removed request for a team July 24, 2026 16:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Linked Apps This PR is linked to a MetOffice/lfric_apps PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants