ode45 or bvp4c? Which one suits this scenario? Please anyone reply

조회 수: 10 (최근 30일)
Jaya
Jaya 2021년 5월 17일
편집: Jaya 2021년 5월 22일
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
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.
Jaya
Jaya 2021년 5월 22일
편집: Jaya 2021년 5월 22일
OK, thanks. But I hope you have observed the no. of days elapsed between my two questions. I read other stuff too and wanted to ask more specifically since I had implemented and again faced problems. I did not ask repetitively without trying. And I myself wrote why I am asking again in my second question. Thanks.

댓글을 달려면 로그인하십시오.

채택된 답변

Jan
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개)

카테고리

Help CenterFile Exchange에서 Ordinary Differential Equations에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by