# NeuralPDE for starting a geophysics repository

**URL:** <https://discourse.julialang.org/t/neuralpde-for-starting-a-geophysics-repository/97047>\
**Category:** Machine Learning\
**Tags:** pde, neural-network, geophysics\
**Created:** [April 4, 2023, 8:16am UTC](https://discourse.julialang.org/t/neuralpde-for-starting-a-geophysics-repository/97047 "2023-04-04T08:16:53Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![pkmishra](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pkmishra/32/14238_2.png) [@pkmishra](https://discourse.julialang.org/u/pkmishra)\
**Post date:** [April 4, 2023, 8:16am UTC](https://discourse.julialang.org/t/neuralpde-for-starting-a-geophysics-repository/97047/1 "2023-04-04T08:16:53Z")

</div>

Hi @ChrisRackauckas, I am writing a research proposal for creating an integrated optimization framework for multi-source geophysical data. The goal is to start something sustainable for long-term. I would like everything (modeling, optimization, ML) in the SciML ecosystem. What’s the long-term plan with NeuralPDE.jl? I see it prefers Lux (new) over Flux (more stable) now.

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [April 4, 2023, 6:55pm UTC](https://discourse.julialang.org/t/neuralpde-for-starting-a-geophysics-repository/97047/2 "2023-04-04T18:55:13Z")

</div>

SciML in general has a pretty large contributor base. It’s hard to get a good count because there’s so many repos, but looking through a few logs it looks like we’ve had about 40 unique contributors this week. Each repo tends to have a few maintainers, and those that are “maintainer light” have active efforts to get new maintainers into the area.

SciML has a diverse set of funding sources and foundations for it. One core one is the MIT Julia Lab, which is about 20 students and postdocs and generally has been well-funded over the years ([https://julia.mit.edu/](https://julia.mit.edu/)). Then there’s JuliaHub ([https://juliahub.com/](https://juliahub.com/)) which is building JuliaSim on the SciML components and thus contributes a lot back to SciML. And Pumas-AI ([https://pumas.ai/](https://pumas.ai/)) also hires a lot of our contributors who then stay in the ecosystem. I am BDFL of SciML and am associated with each of these groups. But also note that this accounts for probably only half of our maintainers, with the others being professors at other universities, associated with companies using SciML, etc. Then there’s also direct funding to SciML, such as the CZI grants and Google Summer of Code programs, which have been funding the growth of new developers and have been successful in their own right on growing new maintainers.

So that’s SciML in general. I am pretty committed to seeing this through to the end. As for NeuralPDE.jl, we’ve recently gotten a new maintainer @xtalax who had been working on MethodOfLines.jl a lot before. We are reworking some of the parsing so that it shares more infrastructure with the rest of the PDE packages. That makes it more sustainable in the long term of course because then updates to finite difference and finite volume stuff feed in as improvements to PINNs. We also have a pretty big GSoC cohort this year forming around NeuralPDE.jl, so I suspect there’s quite a bit of action. And it tends to be a hotspot for MIT’s 18.337 graduate course’s final projects, and that upstream a lot. So late spring through this summer will be quite a big moment for the package.

In the longer term, we plan to extend the geometries to handle arbitrary domains and tessellations. We’re reading the literature and all of the physics-informed neural operator, regularization schemes, etc. are all lined up as projects. So we plan to just keep going.

As for Flux vs Lux, you can use either. Actually the easiest is that internally we can transform Flux to Lux, and we will likely just start to do that. Lux.jl is what SciML really needed so we plan to just keep going that way, and still support a Flux.jl front end through such conversions. It fixes a lot of issues and improves performance.

---

<div class="post-metadata">

**Author:** ![xtalax](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/xtalax/32/35293_2.png) [@xtalax](https://discourse.julialang.org/u/xtalax)\
**Post date:** [April 4, 2023, 9:25pm UTC](https://discourse.julialang.org/t/neuralpde-for-starting-a-geophysics-repository/97047/4 "2023-04-04T21:25:47Z")

</div>

Am happy to support with this endeavour, we are looking to get more physical models for [PDESystemLibrary.jl](https://github.com/SciML/PDESystemLibrary.jl) so perhaps these efforts can feed in to each other.

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [April 4, 2023, 10:41pm UTC](https://discourse.julialang.org/t/neuralpde-for-starting-a-geophysics-repository/97047/5 "2023-04-04T22:41:49Z")

</div>

> [@pkmishra](#):
>
> In principle, I could also include someone from SciML ecosystem but I don’t have ways to spend the budget outside Finland. We could probably use a letter of collaboration/support in the application from SciML saying they could help with some SciML issue.

I’m always happy to provide a letter of support, either from SciML directly or as part of the MIT Julia Lab.

> [@pkmishra](#):
>
> I have been debating myself if I should have gone with Python but I personally like Julia. I am glad to see SciML growing. Hopefully, I can contribute soon!

I think you’d find it very difficult to find a Python library with as robust of a contributor base as we have at SciML. I won’t point any fingers, but if you look at most of the SciML libraries in Python they are mostly personal projects with a single contributor. NeuralPDE.jl is a library I would say is a bit understaffed with there really being two core contributors, which is why I recently brought @xtalax in and we’re going to be training 4 more potentials this summer. But even then, if you’re just looking at NeuralPDE.jl then it’s missing the fact that NeuralPDE.jl is built on Optimization.jl, ModelingToolkit.jl, Symbolics.jl, and now PDEBase.jl, each of which have different contributors playing their role in improving the ecosystem. SciML is a whole operation with its own non-profit organization, its own conference, and the contributors coming from many different companies and universities in order to minimize the risks of any single organization.

---

<div class="post-metadata">

**Author:** ![pkmishra](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pkmishra/32/14238_2.png) [@pkmishra](https://discourse.julialang.org/u/pkmishra)\
**Post date:** [April 4, 2023, 10:59pm UTC](https://discourse.julialang.org/t/neuralpde-for-starting-a-geophysics-repository/97047/6 "2023-04-04T22:59:28Z")

</div>

Awesome! I have been following SciML and other Julia repositories that might be useful in my research. This discussion was super encouraging.
