Deltares / Deltares/imod-python

Refactor: Move splitting logic to separate module and create additional interfaces

Open
#1,783 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

refactor
Dominant language
Python
Stars
41
Forks
12
Avg merge
21h 8m
Merged PRs (30d)
1

Description

https://github.com/Deltares/imod-python/pull/1780 adds splitting method to the MetaSWAP models as well. The splitting methods contain quite some logic, so I think it is best to move them to

Furthermore, it is probably wise to create a SplittingPackage interface, just like we have one for RegriddingPackage. Right now we had to add a IPackageBase interface to allow splitting certain packages which were splittable, but not regriddable (mainly MeteoGrid), which was very confusing.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading pull request #1780 and the splitting methods added to the MetaSWAP models. Trace how IPackageBase currently enables splitting for packages such as MeteoGrid, and compare that arrangement with the existing RegriddingPackage interface. Done means the splitting logic has a clear module and a dedicated SplittingPackage interface without losing support for non-regriddable packages.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.