I used bvp4c to solve second order differential equation: A*y'' = f(y), now I want to get some special values from the solutions. How to get the values of y'' and y' from each point?

 채택된 답변

Torsten
Torsten 2015년 5월 4일

1 개 추천

If you solved your equation by solving the System
y1'=y2
y2'=f(y)/A,
you can get y' and y'' by
yp=deval(sol.yp,sol.x);
plot(sol.x,yp(1,:),sol.x,yp(2,:));
Here, yp(1,:)=y' and yp(2,:)=y''.
Best wishes
Torsten.

댓글 수: 2

Jane
Jane 2015년 5월 4일
편집: Jane 2015년 5월 4일
Torsten, thank you very much for your kind help! Sorry to trouble you again, when I use:
yp=deval(sol.yp,sol.x);
it shows:
Error using deval
must be a structure returned by a differential equation solver.
Error in bvp3
yp = deval(sol.yp,sol.x);
What would be wrong with it?
You must call deval with the solution obtained by bvp4c.
Thus
sol=bvp4c(...);
yp=deval(sol.yp,sol.x);
Best wishes
Torsten.

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

추가 답변 (0개)

카테고리

질문:

2015년 5월 4일

댓글:

2015년 5월 5일

Community Treasure Hunt

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

Start Hunting!

Translated by