ode45 or bvp4c? Which one suits this scenario? Please anyone reply
4 次查看(过去 30 天)
显示 更早的评论
I have a set of differential equations (dPi/dz) for power say for P1 to P7. I have initial power values for P1 to P4 at z=0 and initial power values for P5 to P7 at z= 8. Can I solve this as ode45 or bvp4c?
Because the initial power values I have are not really like boundary conditions. But then how can I use ode45 by using the same P vector definition to have intial values defined for P1 to P4 at one z and for P5 to P7 at another z, as stated above?
4 个评论
John D'Errico
2021-5-22
Please don't keep asking the same question.
Use a boundary value solver, NOT ODE45. However, using a shooting method, as Jan points out, you can use ODE45.
采纳的回答
Jan
2021-5-17
If some conditions are defined at different time points, the problem is not an "initial value problem", which can be solved by ODE45, but a boundary value problem, for which BVP4C or BVP5C is a suitable solver.
An alternative is to write your own boundary value solver:
Start with a smart guess of the missing components of the initial value and integrate with ODE45. You get a difference between the final values and the boundary values at this time point. Then vary the initial conditions to find out the sensitivity. This can be applied with a Newton method to modify the initial values until the final values are matched. This is the "single shooting method".
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Ordinary Differential Equations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!