Question about bvp4c solution

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?

 Accepted Answer

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 Comments

Jane
Jane on 4 May 2015
Edited: Jane on 4 May 2015
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.

Sign in to comment.

More Answers (0)

Asked:

on 4 May 2015

Commented:

on 5 May 2015

Community Treasure Hunt

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

Start Hunting!