Open bknight1 opened 3 months ago
An advanced user feature but worth it says I
We already have the SNES_Scalar and SNES_Vector classes in the cython solvers file. Shall the generic solver inherit from these classes and just have F0 and F1 setters? Or is there a better approach?
The SNES_Scalar and SNES_Vector code also looks very similar. Is it worth re-writing a generic class that can handle both?
Starting work on this now.... will change the setters on the generic class for F0 & F1.
It would be nice to combine SNES_Scalar & SNES_Vector once the setters rewrite is done.
@julesghub - are we there yet ? @bknight1 - is he there yet ?
Still a WIP, Julian has cleaned up the code in preparation but hasn't written the generic class yet
Is your feature request related to a problem? Please describe. Allow F0 and F1 to be set in a generic solver. This would allow users to create their own solvers for various problems.
Describe the solution you'd like Allow F0 and F1 to be set up by the user. Maybe in the generic solver, happy to hear other ideas
Describe alternatives you've considered Currently have to copy the constitutive model, modify the flux term for F1 and then insert terms in the f variable for F0. This works currently but might not in the future. Would be better to have F0 and F1 terms settable in a generic solver.
This would help with the benchmark scripts for the lithostatic pressure solver, the diffusion-only models I'm working on and various other equations people are implementing.
Additional context Happy to implement