-
Notifications
You must be signed in to change notification settings - Fork 35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added coupling between pySDC and Gusto #516
Added coupling between pySDC and Gusto #516
Conversation
field_name=None, | ||
subcycling_options=None, | ||
solver_parameters=None, | ||
limiter=None, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that not all of these options work from pySDC, e.g. the limiter... probably the sub cycling options aren't used and probably not the augmentation either... would it be better to remove them from the interface and docs?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You're right! I removed those three parameters. I am not sure about the options
. Seems to me like it might work when using Gusto for time integration because it adds a wrapper, but I don't actually know.
Co-authored-by: Dr Jemma Shipton <[email protected]>
Co-authored-by: Dr Jemma Shipton <[email protected]>
Co-authored-by: Dr Jemma Shipton <[email protected]>
dtype_f = IMEX_firedrake_mesh | ||
rhs_n_labels = 2 | ||
|
||
def evaluate_individual_term(self, u, label): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
slightly picky... but label
might apply to more than one term so not sure "individual" is the right word
Co-authored-by: Dr Jemma Shipton <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like a very thorough job to me @brownbaerchen ! I've checked all the Gusto residual manipulation and agree with what you've done, and it's all very comprehensively tested. Great work!
This enables to use pySDC as a time discretisation method within Gusto, or to setup a geophysical problem in Gusto and then run it in pySDC.
The intended use is to take a script running a Gusto problem, setup the Gusto timestepper with the pySDC integrator and then either just use that in normal Gusto fashion, or extract the controller from the pySDC integrator and run in pySDC.
Added in this PR
Tests
Caveats