-
Notifications
You must be signed in to change notification settings - Fork 0
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
Implementing other DAE solvers in pySDC
#8
Comments
Actually, in RK you don't need to compute the residual at all, so ideally this is never even called. The predict function you also don't have to overload, I think, because there is no need to fill |
So, the original way in For instance, for
but for DAEs we would then need
but both classes would have the same attributes for the nodes, weights, and the matrix. Or did I miss something? |
I think you could do
with |
On the other hand, it may be more convenient to have a single
Or something of sorts. |
Ah, this is what you meant by inheritance magic. 👌 Thanks for discussion, I'll try that! |
In |
This is just out of laziness, thb. The diagonal element in the last row is always zero. You can use |
Ok, got it. :D |
One more question for @brownbaerchen: I already implemented Expressing the backward Euler as Runge-Kutta method, we would get for an ODE
Now the
by having
Since Runge-Kutta methods are not iterative, they solve the system to the next stage |
This is indeed a bug. Thanks for noticing! Just change it to 1 :) |
Great! No problem! |
Since the current implemented fully-implicit SDC sweeper for DAEs
fully_implicit_DAE
and its semi-explicit siblingSemiExplicitDAE
should also be competitive against other DAE solvers, sweepers such as Forward Euler, Backward Euler, Runge-Kutta and Multistep shall be implemented. A template is already provided by the Runge-Kutta and Multistep sweepers.First of all, their framework has to be checked how they do work. @brownbaerchen already adapted the classes in the way, that only the
update_nodes
method has to be overwritten in case of inheritance from these ones. Since the pull request #371 resulted in a deeper look into the modulepySDC.core.Sweeper
and how does an inheritance offully_implicit_DAE
fromgeneric_implicit
could work, also the methodscompute_residual
andpredict
has to be overwritten.The text was updated successfully, but these errors were encountered: