-
-
Notifications
You must be signed in to change notification settings - Fork 10
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
linear operator conversion error in SplitODEProblem #191
Comments
It looks like your time-stepper, I tried your problem with Tsit5 which doesn't require a full matrix, and it worked fine. In general, the fastest way to solve such a problem is with an IMEX timestepper and a krylov linear solver. F = SplitFunction(L, N; jac_prototype = L)
prob = ODEProblem(F, u0, (0,1.))
sol = solve(prob, TRBDF2(autodiff = false, linsolve = KrylovJL_GMRES())) However, that functionality is broken right now. Split operators won't work with implicit/semiimplicit solvers, but we're looking to fix that in the next 1-2 weeks. Till then I'd recommend sticking with any of the stiff explicit solvers. |
Thanks for your reply, I'll follow your advice. Being able to write to this interface is already great progress. Thanks a lot for your work! |
of course. I'll let you know here when the split function + imex is done. also, if you are using fourier stuff extensively, I've implemented almost all relevant operators with scimloperators here: https://github.com/CalculustJL/FourierSpaces.jl here's an example of usage https://github.com/CalculustJL/FourierSpaces.jl/blob/master/examples/fourier1d/heat.jl |
Thanks a lot for the links, I am reading the code and finding it quite enlightening. I think I could contribute some additional examples such as vortex lattice formation in a Bose-Einstein condensate. Any updates regarding split + imex? |
In |
@AshtonSBradley sorry for the delayed response. Contributions are welcome. Feel free to make an issue in |
No updates on the Split ODEs prob + implicit methods. That is going to be a substantial change in OrdinaryDiffEq and would require a week or so of dedicated effort. Note this is one of the two remaining pieces of #142 - a six-month long effort. I won't hit that use case in my school work till at least the fall. Best case scenario I get to it during vacation in August, unless @gaurav-arya has time to hit that before me. |
In FourierSpaces, V = FourierSpace(Nx, Ny)
x, y = points(V)
Dx, Dy = gradientOp(V)
L = DiagonalOperator(x) * Dy @AshtonSBradley is this what you were looking for? |
I am curious if there is any progress along this line of Split ODE prob + implicit methods? |
I thought I handled that a few weeks ago and closed the issue in OrdinaryDiffEq? |
the error has changed
|
@ChrisRackauckas do you mean SciML/OrdinaryDiffEq.jl#2009 ? |
Can you open it up on OrdinaryDiffEq? I don't know if I'll get to this soon but it would be good to track. |
|
@vpuri3 this is the example code using https://docs.sciml.ai/SciMLOperators/dev/tutorials/fftw/
as a starting point for an fft pde (updated)
Throws the error
Using
The text was updated successfully, but these errors were encountered: