PyMPDATA icon indicating copy to clipboard operation
PyMPDATA copied to clipboard

Comparison against the 'py-pde' package based on the example: Diffusion equation with spatial dependence

Open arekpaterak opened this issue 6 months ago • 1 comments

In this pull request, we extend the examples with a reproduction of the "Diffusion equation with spatial dependence" example from the py-pde library (the original example). Besides showcasing PyMPDATA capabilities on a new example, this enables us to compare both libraries.

To reproduce the example, we have had to extend PyMPDATA itself to handle heterogeneous diffusivity.


We have started the work on this project in a separate repository with a different project structure so the change history doesn't fully reflect real contributions. Then we moved out changes to a fork of PyMPDATA.

  • Adrian (@MyNameIsArko) primarily contributed to reproducing the example with PyMPDATA and making necessary extensions to the library.
  • Wiktor (https://github.com/WiktorProsowicz) and Jan (https://github.com/yancostrishevsky) prepared the core logic of the comparison.
  • Arek (@arekpaterak) integrated it with PyMPDATA library to make this direct pull request.

arekpaterak avatar Jun 10 '25 14:06 arekpaterak

CI reports this failure (https://github.com/open-atmos/PyMPDATA/actions/runs/15725758755/job/44315180539?pr=578):

  File "/home/runner/work/PyMPDATA/PyMPDATA/./PyMPDATA/options.py", line 37, in Options
    dtype: np.float32 | np.float64 = np.float64,
TypeError: unsupported operand type(s) for |: 'type' and 'type'

slayoo avatar Jun 18 '25 06:06 slayoo