zwicker-group / py-pde

Python package for solving partial differential equations using finite differences.

Home Page:https://py-pde.readthedocs.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Add `py-modelrunner` as a dependency

david-zwicker opened this issue · comments

We might in the future want to base py-pde on the py-modelrunner package that we also maintain. This would remove some code duplication and provide improved input/output functions for objects defined in py-pde. We could also improve the PDEBase class by inheriting from ModelBase. This would also facilitate HPC calculations using basic PDE models.

It might be better to couple the two packages only weakly (so py-modelrunner does not become a required dependence). We could for instance provide a special storage class that uses a modelrunner storage. Moreover, we could provide a method for the PDEBase class, which makes it behave as a model from modelrunner.

We added some support for writing grids and fields into py-modelrunner storages, and we added a class ModelrunnerStorage, which can be used for storing trajectory information. This might cover the most important immediate use cases for now.