Skip to content

Halo exchange refactor #378

@FlorianDeconinck

Description

@FlorianDeconinck

Code in QuantityFactory allocate a temporary Quantity to build the Halo Specification used for exchange. This code will then create the spec based on that Quantity but will allow divergence from the default number of halo points.

We put a warning in the halo_spec function because we weren't sure that was needed.

Code in pyfv3.dyn_core has a legit case of a 3-halo allocated Quantity requiring a 2-halo exchange.

This entire system is duct tape upon duct tape and need refactor.

First steps:

  • Do away with the warning
  • Rely on own quantity for halo_spec rather than a temporary allocation
  • Deprecate than remove QuantityFactory.get_quantity_halo_spec

Going deeper - requiring orchestration-worthy system:

  • WrappedHaloUpdater needs to go
  • HaloUpdater based on previously cached Quantity needs to go

Metadata

Metadata

Assignees

No one assigned

    Labels

    EnhancementNew feature or requestRefactorTechnical internal work to improve systems

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions