Issue #1772 Bug fix writing clipped idf_svat.#1781
Conversation
JoerivanEngelen
left a comment
There was a problem hiding this comment.
Thanks for adding the test and proposing a fix! I'm not happy yet with the location of the fix though. If you can move the logic to IdfMapping._render (I gave some suggestions), we utilize the strengths of the current architecture a lot better.
imod/msw/pkgbase.py
Outdated
| Collect to be written data in a DataFrame and call | ||
| ``self.write_dataframe_fixed_width`` | ||
| """ | ||
| if self.__class__.__name__ == "IdfMapping": |
There was a problem hiding this comment.
This works, but we don't want special logic for IdfMapping in the Package baseclass (unless there is no other way).
In this case, you can override the _render method in the IdfMapping class, in the imod/msw/idf_mapping.py file. In pseudo-code:
class IdfMapping:
...
def _render(
self,
...
) -> None:
<all logic to compute rows, cols, x_grid, and y_grid>
self.dataset["rows"] = rows
self.dataset["columns"] = columns
self.dataset["x_grid"] = x_grid
self.dataset["y_grid"] = y_grid
super()._render(...) There was a problem hiding this comment.
Yes, good one! I just changed the code like you suggested.
| assert_almost_equal(results["x_grid"], np.array([2.0, 2.0, 2.0, 2.0, 4.0])) | ||
|
|
||
|
|
||
| def test_idf_oc_write_simple_model_clip(fixed_format_parser): |
|
JoerivanEngelen
left a comment
There was a problem hiding this comment.
Thanks for changing this!



Fixes #1772
Description
Bug fix for row/column indices when writing a clipped version of idf_svat.inp.
Checklist
Issue #nr, e.g.Issue #737pixi run generate-sbomand committed changes