title: MatLab ODE start/stop conditions
body: <p>I have a small problem. I have 2 equation of motion 'ph' and 'ph2'
  I don´t know how to set ODE to stop calculating 'ph' when x(1)> 0.111 and then starts to calculated 'ph2' again only to 0.111, after that plot 'ph' + 'ph2' to one graph depend on time 'w' i think I have to set some time limitations but dont know how to. I use HELP but no benefit for me.</p>
  
  <pre><code>[t,y] = ode45(@ph,[0,w_max],[0,0]);
  
  function dx = ph(tt,x)
  global F1 c m_c Ff p w s ln f_t sig dstr Ren pn Fex Fzmax xz xn l Fz mn
  Fpp = F1 + c*x(1);
  
  if pn&lt;0
   pn=abs(pn);
  end
  
  if x(1)&lt;ln
  
      pn=spline(w,p,tt)-((2*sig)/dstr*Ren);    
      Fex=3.1416.*f_t.*pn.*(ln-x(1));
  end
  
  if x(1)&lt;42e-5
       Fz = Fzmax*(1-(1/xz)*(x(1)+l));   
  end
  
  if x(1)&gt;44e-3
      m_c=m_c-mn;
  end
  dx=[x(2);((spline(w,p,tt)*s)-Fpp-Ff-Fex-Fz)./m_c];
  
  
  [t2,y2] = ode45(@ph2,[0,w_max],[0,0]);
  
  function dx=ph2(tt,x)
  
      global Fv m_c g f alfa Fzp c m_nbp
  
      Ft=m_c*g*f;
      Fv = 2*f*(Fzp/cos(alfa));
  
      if x(1)&gt;0.44
  
      m_c=m_c+m_nbp
  
      end
  
      dx = [x(2);((x(1)*c)-Ft-Fv)/m_c];
  </code></pre>