<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>EventState (Apache Commons Math 3.3 API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="EventState (Apache Commons Math 3.3 API)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/EventState.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/commons/math3/ode/events/EventHandler.Action.html" title="enum in org.apache.commons.math3.ode.events"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../../org/apache/commons/math3/ode/events/FilterType.html" title="enum in org.apache.commons.math3.ode.events"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/commons/math3/ode/events/EventState.html" target="_top">Frames</a></li>
<li><a href="EventState.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.commons.math3.ode.events</div>
<h2 title="Class EventState" class="title">Class EventState</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.commons.math3.ode.events.EventState</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="strong">EventState</span>
extends <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">This class handles the state for one <a href="../../../../../../org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events"><code>event handler</code></a> during integration steps.

 <p>Each time the integrator proposes a step, the event handler
 switching function should be checked. This class handles the state
 of one handler during one integration step, with references to the
 state at the end of the preceding step. This information is used to
 decide if the handler should trigger an event or not during the
 proposed step.</p></div>
<dl><dt><span class="strong">Since:</span></dt>
  <dd>1.2</dd>
<dt><span class="strong">Version:</span></dt>
  <dd>$Id: EventState.java 1558462 2014-01-15 16:48:25Z luc $</dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#EventState(org.apache.commons.math3.ode.events.EventHandler, double, double, int, org.apache.commons.math3.analysis.solvers.UnivariateSolver)">EventState</a></strong>(<a href="../../../../../../org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events">EventHandler</a>&nbsp;handler,
          double&nbsp;maxCheckInterval,
          double&nbsp;convergence,
          int&nbsp;maxIterationCount,
          <a href="../../../../../../org/apache/commons/math3/analysis/solvers/UnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">UnivariateSolver</a>&nbsp;solver)</code>
<div class="block">Simple constructor.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#evaluateStep(org.apache.commons.math3.ode.sampling.StepInterpolator)">evaluateStep</a></strong>(<a href="../../../../../../org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a>&nbsp;interpolator)</code>
<div class="block">Evaluate the impact of the proposed step on the event handler.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#getConvergence()">getConvergence</a></strong>()</code>
<div class="block">Get the convergence threshold for event localization.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events">EventHandler</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#getEventHandler()">getEventHandler</a></strong>()</code>
<div class="block">Get the underlying event handler.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#getEventTime()">getEventTime</a></strong>()</code>
<div class="block">Get the occurrence time of the event triggered in the current step.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#getMaxCheckInterval()">getMaxCheckInterval</a></strong>()</code>
<div class="block">Get the maximal time interval between events handler checks.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#getMaxIterationCount()">getMaxIterationCount</a></strong>()</code>
<div class="block">Get the upper limit in the iteration count for event localization.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#reinitializeBegin(org.apache.commons.math3.ode.sampling.StepInterpolator)">reinitializeBegin</a></strong>(<a href="../../../../../../org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a>&nbsp;interpolator)</code>
<div class="block">Reinitialize the beginning of the step.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#reset(double, double[])">reset</a></strong>(double&nbsp;t,
     double[]&nbsp;y)</code>
<div class="block">Let the event handler reset the state if it wants.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#setExpandable(org.apache.commons.math3.ode.ExpandableStatefulODE)">setExpandable</a></strong>(<a href="../../../../../../org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a>&nbsp;expandable)</code>
<div class="block">Set the equation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#stepAccepted(double, double[])">stepAccepted</a></strong>(double&nbsp;t,
            double[]&nbsp;y)</code>
<div class="block">Acknowledge the fact the step has been accepted by the integrator.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/ode/events/EventState.html#stop()">stop</a></strong>()</code>
<div class="block">Check if the integration should be stopped at the end of the
 current step.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="EventState(org.apache.commons.math3.ode.events.EventHandler, double, double, int, org.apache.commons.math3.analysis.solvers.UnivariateSolver)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>EventState</h4>
<pre>public&nbsp;EventState(<a href="../../../../../../org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events">EventHandler</a>&nbsp;handler,
          double&nbsp;maxCheckInterval,
          double&nbsp;convergence,
          int&nbsp;maxIterationCount,
          <a href="../../../../../../org/apache/commons/math3/analysis/solvers/UnivariateSolver.html" title="interface in org.apache.commons.math3.analysis.solvers">UnivariateSolver</a>&nbsp;solver)</pre>
<div class="block">Simple constructor.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>handler</code> - event handler</dd><dd><code>maxCheckInterval</code> - maximal time interval between switching
 function checks (this interval prevents missing sign changes in
 case the integration steps becomes very large)</dd><dd><code>convergence</code> - convergence threshold in the event time search</dd><dd><code>maxIterationCount</code> - upper limit of the iteration count in
 the event time search</dd><dd><code>solver</code> - Root-finding algorithm to use to detect state events</dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="getEventHandler()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEventHandler</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/commons/math3/ode/events/EventHandler.html" title="interface in org.apache.commons.math3.ode.events">EventHandler</a>&nbsp;getEventHandler()</pre>
<div class="block">Get the underlying event handler.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>underlying event handler</dd></dl>
</li>
</ul>
<a name="setExpandable(org.apache.commons.math3.ode.ExpandableStatefulODE)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setExpandable</h4>
<pre>public&nbsp;void&nbsp;setExpandable(<a href="../../../../../../org/apache/commons/math3/ode/ExpandableStatefulODE.html" title="class in org.apache.commons.math3.ode">ExpandableStatefulODE</a>&nbsp;expandable)</pre>
<div class="block">Set the equation.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>expandable</code> - equation being integrated</dd></dl>
</li>
</ul>
<a name="getMaxCheckInterval()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxCheckInterval</h4>
<pre>public&nbsp;double&nbsp;getMaxCheckInterval()</pre>
<div class="block">Get the maximal time interval between events handler checks.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>maximal time interval between events handler checks</dd></dl>
</li>
</ul>
<a name="getConvergence()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConvergence</h4>
<pre>public&nbsp;double&nbsp;getConvergence()</pre>
<div class="block">Get the convergence threshold for event localization.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>convergence threshold for event localization</dd></dl>
</li>
</ul>
<a name="getMaxIterationCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxIterationCount</h4>
<pre>public&nbsp;int&nbsp;getMaxIterationCount()</pre>
<div class="block">Get the upper limit in the iteration count for event localization.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>upper limit in the iteration count for event localization</dd></dl>
</li>
</ul>
<a name="reinitializeBegin(org.apache.commons.math3.ode.sampling.StepInterpolator)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reinitializeBegin</h4>
<pre>public&nbsp;void&nbsp;reinitializeBegin(<a href="../../../../../../org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a>&nbsp;interpolator)
                       throws <a href="../../../../../../org/apache/commons/math3/exception/MaxCountExceededException.html" title="class in org.apache.commons.math3.exception">MaxCountExceededException</a></pre>
<div class="block">Reinitialize the beginning of the step.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>interpolator</code> - valid for the current step</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/exception/MaxCountExceededException.html" title="class in org.apache.commons.math3.exception">MaxCountExceededException</a></code> - if the interpolator throws one because
 the number of functions evaluations is exceeded</dd></dl>
</li>
</ul>
<a name="evaluateStep(org.apache.commons.math3.ode.sampling.StepInterpolator)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>evaluateStep</h4>
<pre>public&nbsp;boolean&nbsp;evaluateStep(<a href="../../../../../../org/apache/commons/math3/ode/sampling/StepInterpolator.html" title="interface in org.apache.commons.math3.ode.sampling">StepInterpolator</a>&nbsp;interpolator)
                     throws <a href="../../../../../../org/apache/commons/math3/exception/MaxCountExceededException.html" title="class in org.apache.commons.math3.exception">MaxCountExceededException</a>,
                            <a href="../../../../../../org/apache/commons/math3/exception/NoBracketingException.html" title="class in org.apache.commons.math3.exception">NoBracketingException</a></pre>
<div class="block">Evaluate the impact of the proposed step on the event handler.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>interpolator</code> - step interpolator for the proposed step</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the event handler triggers an event before
 the end of the proposed step</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/exception/MaxCountExceededException.html" title="class in org.apache.commons.math3.exception">MaxCountExceededException</a></code> - if the interpolator throws one because
 the number of functions evaluations is exceeded</dd>
<dd><code><a href="../../../../../../org/apache/commons/math3/exception/NoBracketingException.html" title="class in org.apache.commons.math3.exception">NoBracketingException</a></code> - if the event cannot be bracketed</dd></dl>
</li>
</ul>
<a name="getEventTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEventTime</h4>
<pre>public&nbsp;double&nbsp;getEventTime()</pre>
<div class="block">Get the occurrence time of the event triggered in the current step.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>occurrence time of the event triggered in the current
 step or infinity if no events are triggered</dd></dl>
</li>
</ul>
<a name="stepAccepted(double, double[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stepAccepted</h4>
<pre>public&nbsp;void&nbsp;stepAccepted(double&nbsp;t,
                double[]&nbsp;y)</pre>
<div class="block">Acknowledge the fact the step has been accepted by the integrator.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>t</code> - value of the independent <i>time</i> variable at the
 end of the step</dd><dd><code>y</code> - array containing the current value of the state vector
 at the end of the step</dd></dl>
</li>
</ul>
<a name="stop()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stop</h4>
<pre>public&nbsp;boolean&nbsp;stop()</pre>
<div class="block">Check if the integration should be stopped at the end of the
 current step.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>true if the integration should be stopped</dd></dl>
</li>
</ul>
<a name="reset(double, double[])">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>reset</h4>
<pre>public&nbsp;boolean&nbsp;reset(double&nbsp;t,
            double[]&nbsp;y)</pre>
<div class="block">Let the event handler reset the state if it wants.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>t</code> - value of the independent <i>time</i> variable at the
 beginning of the next step</dd><dd><code>y</code> - array were to put the desired state vector at the beginning
 of the next step</dd>
<dt><span class="strong">Returns:</span></dt><dd>true if the integrator should reset the derivatives too</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/EventState.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/commons/math3/ode/events/EventHandler.Action.html" title="enum in org.apache.commons.math3.ode.events"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../../org/apache/commons/math3/ode/events/FilterType.html" title="enum in org.apache.commons.math3.ode.events"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/commons/math3/ode/events/EventState.html" target="_top">Frames</a></li>
<li><a href="EventState.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2003&#x2013;2014 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>
