Closed HaoJieZhang0917 closed 8 months ago
That's a boundary value problem. You gave it an ODE solver, not a BVP solver. That doesn't make sense. See the tutorial on BVPs: https://docs.sciml.ai/DiffEqDocs/stable/tutorials/bvp_example/. You need to use a solver for BVPs, like Shooting(Rosenbrock23())
.
That's a boundary value problem. You gave it an ODE solver, not a BVP solver. That doesn't make sense. See the tutorial on BVPs: https://docs.sciml.ai/DiffEqDocs/stable/tutorials/bvp_example/. You need to use a solver for BVPs, like
Shooting(Rosenbrock23())
.
Thanks for the reply.Before this, I have used the Shooting(Vern8())
method to solve the BVP problem, but the results are still aborting, I think there may be a problem with my model settings and boundary condition settings, but I don't know where the problem is.
What is the error message or warning? Is the model stiff? You show a stiff ODE solver earlier, but now you're showing a method only for non-stiff equations.
I tested this problem on the latest version of BoundaryValueDiffEq.jl:
Final solution:
I tested this problem on the latest version of BoundaryValueDiffEq.jl:
- Single Shooting: warning dt<=dtmin, Failure retcode
- Multiple Shooting: warning dt<=dtmin, Successful retcode
- MIRK methods: no warning, Successful retcode
Final solution:
yes, it is the right result.I have caculated out by python.But when i use julia,it takes a very long time to use MIRK method,so i just use the shooting .I do not know the reason why it is useless for shooting- _ -
What is the error message or warning? Is the model stiff? You show a stiff ODE solver earlier, but now you're showing a method only for non-stiff equations.
sorry, the model is stiff . Just like the next follower shows , it can be solved by MIRK method , but not for shooting
I tested this problem on the latest version of BoundaryValueDiffEq.jl:
- Single Shooting: warning dt<=dtmin, Failure retcode
- Multiple Shooting: warning dt<=dtmin, Successful retcode
- MIRK methods: no warning, Successful retcode
Final solution:
How long it takes by using MIRK method?
orry, the model is stiff . Just like the next follower shows , it can be solved by MIRK method , but not for shooting
Yes that's expected. Shooting methods are not as stable as collocation methods, and so for sufficiently difficult problems it will be only the MIRK and similar methods that are stable.
orry, the model is stiff . Just like the next follower shows , it can be solved by MIRK method , but not for shooting
Yes that's expected. Shooting methods are not as stable as collocation methods, and so for sufficiently difficult problems it will be only the MIRK and similar methods that are stable.
Thank you for your help!
But when i use julia,it takes a very long time to use MIRK method,so i just use the shooting .I do not know the reason why it is useless for shooting- _ -
Could you show the version of BoundaryValueDiffEq.jl you are using? It is pretty fast here to get the final result using MIRK methods. @HaoJieZhang0917
orry, the model is stiff . Just like the next follower shows , it can be solved by MIRK method , but not for shooting
Yes that's expected. Shooting methods are not as stable as collocation methods, and so for sufficiently difficult problems it will be only the MIRK and similar methods that are stable.
i have another question , can the parameter tspan be set to a non-equidistant mesh?similar to the Chebyshev method.
But when i use julia,it takes a very long time to use MIRK method,so i just use the shooting .I do not know the reason why it is useless for shooting- _ -
Could you show the version of BoundaryValueDiffEq.jl you are using? It is pretty fast here to get the final result using MIRK methods. @HaoJieZhang0917
The verson of BoundaryValueDiffEq.jl is v4.0.1 . I almost need 15 mins to caculate it through i have setted the dt=0.5...
That compile time is fixed with Julia v1.1.0.
I'm trying to calculate a second-order ordinary BVP differential equation problem, but no matter which method I use, my results always show divergence. But I don't know what the problem with my model or boundary conditions is. Is there a professional who can help me?
The equation is : ddu=u^2-v^2+duw ddv=2uv+dvw *dw=-2u**![image](https://github.com/SciML/DifferentialEquations.jl/assets/103304790/79710342-c515-4601-bcba-4f2c5c912da1)
My code is : ` using DifferentialEquations