-
Notifications
You must be signed in to change notification settings - Fork 4
Description
This is a major endeavor that will require a lot of work/thought. Essentially we want to do the following: Replace everything in ggce.models and ggce.engine.system with low level language accelerators. For example, by using pybind11 as a submodule we should be able to create Python-importable binaries.
As funny as it is, I think that the current solvers we use in NumPy, SciPy and (obviously) PETSc are faster than most of what we could try to get working in a lower level language! So for now, we can stick with those. But the steps of generating the basis are incredibly time-consuming and could be dramatically sped up.
This idea is still very much in the abstract but I want to document that we want to do it. I'm also closing #6 in favor of this, since this feature will do more than just generate the basis, it will also hook into the modules in e.g. ggce.engine.terms.