title: matlab ode23 solver errors unknown
body: <p>We are trying to model a DC/DC buck converter using matlab's ode23 solver. When we try to run our code the following errors come up:</p>
  
  <pre><code>??? Error using ==&gt; odearguments at 91
  The last entry in tspan must be different
  from the first entry.
  
  Error in ==&gt; ode23 at 171
  [neq, tspan, ntspan, next, t0, tfinal,
  tdir, y0, f0, odeArgs, odeFcn, ...
  
  Error in ==&gt; buck2 at 13
        [t,x] = ode23(@event1,[t0 tf],x0);
  </code></pre>
  
  <p>When we take out the code that modifies the initial condition array the code runs without errors but does not produce the expected result.</p>
  
  <p>This is our code:</p>
  
  <pre><code>function buck2
  close all
  clear all
  clc
  
  t0 = 0; 
  tf = 1;
  x0 = [0 0];  % Initial conditions
  
  for i = 1:10
      if (1 &lt;= i &lt;= 4),
        [t,x] = ode23(@event1,[t0 tf],x0);
        nt = length(t);          
      else
        [t,x] = ode23(@event2,[t0 tf],x0);
        nt = length(t);   
      end   
      t0 = t(nt);
      x0 = x(nt);
  end
  
  plot(t,x)
  
  function xdot = event1(t,x)
  L = (12.12e-6);
  C = (19.5e-6);
  RC = (2.5*19.5e-6);
  xdot = [(24/L) - (x(2)/L); (x(1)/C) - (x(2)/RC)];
  
  function xdot = event2(t,x)
  L = (12.12e-6);
  C = (19.5e-6);
  RC = (2.5*19.5e-6);
  xdot = [-(x(2)/L); (x(1)/C) - (x(2)/RC)];
  </code></pre>