team-ocean / veros

The versatile ocean simulator, in pure Python, powered by JAX.
https://veros.readthedocs.io
MIT License
330 stars 55 forks source link

Non-hydrostatic solver #370

Open tomchor opened 2 years ago

tomchor commented 2 years ago

Hi, everyone, I just stumbled into this project after watching this JuliaCon session and let me start by saying that I really enjoy its vision and scope!

I've been reading through the docs and it seems like you don't have the capability of running nonhydrostatic LES, do I understand that correctly?

If so, do you envision them to be implemented soon? From the intro I get the feeling that the nonhydrostatic solver will be ported soon from pyOM2, but I see no mention of LES closures. I ask this because I think that if LES are possible with this package, it'll open up many more research avenues given the extensibility of the model and ability to run on multiple GPUs.

Thanks!

dionhaefner commented 2 years ago

Hey, glad you like the project! It is correct that we have not ported PyOM2's non-hydrostatic solver, so we do not have support for these setups.

So far we didn't need a non-hydrostatic solver for our own work, and my time is limited at the moment, so I wouldn't expect this to happen anytime soon unless someone volunteers.

It's not a huge deal to port it, in principle you just need to assemble the correct matrix and find efficient settings for the solvers. All the boilerplate is already there for the pressure solver. But the devil might be in the details.

tomchor commented 2 years ago

Thank you! Is the same true for LES closures? (e.g. Smagorinsky-Lilly)

dionhaefner commented 2 years ago

Yea we don't have those either. We are currently focused on integrating sea-ice and biogeochemistry plugins and LES hasn't really been on our radar :)

That said if anyone wants to contribute something (even something very simple) they have my full support.

tomchor commented 2 years ago

Sounds good. Thanks! And good luck with the project :)

dionhaefner commented 2 years ago

Let's keep this open so we don't forget about it :wink: