ode45 is not evluated at requried interval?
    1 view (last 30 days)
  
       Show older comments
    
    Michael Kollmann 036893899
 on 2 Dec 2018
  
    
    
    
    
    Edited: Michael Kollmann 036893899
 on 5 Dec 2018
            Greetings,
I'm trying to run the following code for solving the linear 2nd order ODE y''=y+1; for 0<=x<=10, with boundary condituions  y(0)=1, y(10)=0, and a step size of h=0.01. I give only the first part of the code, because this is where I face this issue.
The code was pretty much used as is from this page : https://www.mathworks.com/help/symbolic/odetovectorfield.html#bvlvtw5-1
*--------*
clear all; clc;
h=0.01;
xspan=[0:h:10];
y1=[1 1];
syms y(x)
[V] = odeToVectorField(diff(y, 2) == (y+1));
M = @(x,Y)[Y(2); Y(1)+1];
sol1=ode45(M,xspan,y1);
*--------*
the solution I get is:
*--------*
sol1 = 
  struct with fields:
     solver: 'ode45'
    extdata: [1×1 struct]
          x: [0 0.0100 0.0600 0.3100 1.1195 2.1035 3.1035 4.1035 5.1035 6.1035 7.1035 8.1035 9.1035 10]
          y: [2×14 double]
      stats: [1×1 struct]
      idata: [1×1 struct]
*--------*
The question is why the resulting y vector is solved for the given x and not in the intervals I specified in xspan?
I know ode45 solves for its own step size, but as far as I understand it is still supposed to be evaluated in the intreval above mentioned
Thanks so much in advance
Michael
0 Comments
Accepted Answer
More Answers (0)
See Also
Categories
				Find more on Ordinary Differential Equations in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
